Você está na página 1de 12

APOSTILA DE JAVA

CÓDIGOS
 Array List

Para facilitar esse tipo de caso podemos declarar um vetor


(array) de doubles:

double[] saldosDasContas;

O double[] é um tipo. Uma array é sempre um objeto,


portanto, a variável saldosDasContas é uma referência. Vamos
precisar criar um objeto para poder usar a array. Como criamos o
objeto-array?

saldosDasContas= new double[10];

O que fizemos foi criar uma array de double de 10 posições e


atribuir o endereço no qual ela foi criada. Podemos ainda acessar
as posições do array:

saldosDasContas[5] = conta5.getSaldo();

O código acima altera a sexta posição do array. No Java, os


índices do array vão de 0 a n-1, onde n é o tamanho dado no
momento em que você criou o array. Se você tentar acessar uma
posição fora desse alcance, um erro ocorrerá durante a execução.
 Tirar a barra da janela
this.setUndecorated(true);

 Barra de carregamento
int i = 1;
public void carregarBarra(){
ActionListener ac = new ActionListener(){
public void actionPerformed(ActionEvent e) {

jpbBarra.setString(i+"%");

jpbBarra.setValue(i);
if(i==101){
new Acesso().setVisible(true);
setVisible(false);
}
i++;
}
};
Timer t = new Timer(20,ac);
t.start();
}
//depois coloque dentro de um evento
carregarBarra();
 Para mudar a barra de cor
try {

UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndF
eelClassName());
} catch (ClassNotFoundException ex) {

Logger.getLogger(JFrame.class.getName()).log(Level.SEVERE,
null, ex);
} catch (InstantiationException ex) {

Logger.getLogger(JFrame.class.getName()).log(Level.SEVERE,
null, ex);
} catch (IllegalAccessException ex) {

Logger.getLogger(JFrame.class.getName()).log(Level.SEVERE,
null, ex);
} catch (UnsupportedLookAndFeelException ex) {

Logger.getLogger(JFrame.class.getName()).log(Level.SEVERE,
null, ex);
}
 Construtores

Quando usamos a palavra chave new, estamos construindo um


objeto. Sempre quando o new é chamado, ele executa o construtor
da classe. O construtor da classe é um bloco declarado com o
mesmo nome que a classe:

class Conta {
String titular;
int numero;
double saldo;

// construtor
Conta() {
System.out.println("Construindo uma conta.");
}

// ..
}

Então, quando fizermos:

Conta c = new Conta();


 Para mudar de campo de texto apertando Enter
private void jtxt1KeyPressed(java.awt.event.KeyEvent evt) {
if (evt.getKeyCode() == evt.VK_ENTER) {
jtxt2.requestFocus();

}
}
 Controlando o acesso

Um dos problemas mais simples que temos no nosso sistema


de contas é que o método saca permite sacar mesmo que o saldo
seja insuficiente. A seguir você pode lembrar como está a classe
Conta:

class Conta {
String titular;
int numero;
double saldo;

// ..

void saca(double valor) {


this.saldo = this.saldo - valor;
}
}

A classe a seguir mostra como é possível ultrapassar o limite


de saque usando o método saca:

class TestaContaEstouro1 {
public static void main(String[] args) {
Conta minhaConta = new Conta();
minhaConta.saldo = 1000.0;
minhaConta.saca(50000); // saldo é só 1000!!
}
}

Podemos incluir um if dentro do nosso método saca() para


evitar a situação que resultaria em uma conta em estado
inconsistente, com seu saldo abaixo de 0. Fizemos isso no capítulo
de orientação a objetos básica.

Apesar de melhorar bastante, ainda temos um problema mais


grave: ninguém garante que o usuário da classe vai sempre utilizar
o método para alterar o saldo da conta. O código a seguir faz isso
diretamente:

class TestaContaEstouro2 {
public static void main(String[] args) {
Conta minhaConta = new Conta();
minhaConta.saldo = -200; //saldo está abaixo de 0
}
}

Como evitar isso? Uma ideia simples seria testar se não


estamos sacando um valor maior que o saldo toda vez que formos
alterá-lo:

class TestaContaEstouro3 {

public static void main(String[] args) {


// a Conta
Conta minhaConta = new Conta();
minhaConta.saldo = 100;

// quero mudar o saldo para -200


double novoSaldo = -200;

// testa se o novoSaldo é válido


if (novoSaldo < 0) { //
System.out.println("Não posso mudar para esse saldo");
} else {
minhaConta.saldo = novoSaldo;
}
}
}
 Não deixar os campos de texto vazios

if (jtxtnome.getText().isEmpty() || jtxtidade.getText().isEmpty())
{
JOptionPane.showMessageDialog(rootPane, "Preencha os
campos!!");
} else {
//alguma coisa
}
 Colocar uma imagem em uma Label

Obs: Criar uma classe para auxílio


ImageIcon imagem = new
ImageIcon(getClass().getResource("/img/ka.png"));
JLabel.setIcon(imagem);

 Para ver se uma caixa de seleção está selecionada

if (jckb.isSelected()) {
x = 0.02;

} else {
x = 0;
}

 Para ver se uma caixa de combinação está selecionada

if (jcmbCategoria.getSelectedIndex() == 0) {
x=1;
} else {
X=0;
}

 Converter String para Int


qtDias = Integer.parseInt(jtxtAlu.getText());
 Definir quantidade de casas decimais
DecimalFormat df = new DecimalFormat("0.00");
jtxt.setText("R$" + df.format(desconto));

 Gerar janela centralizada


this.setLocationRelativeTo(this);

 Mudar cor de fundo


this.getContentPane().setBackground (new Color(255,0,0));

 Usar variável em mais de um formulário


//Formulário A de origem
public static String x;
//Para Formulário B que será usado
A.x
CONTROLE DO BANCO

 Atributo Connection:
Representa uma conexão ao banco de dados. Nessa interface
são apresentados os métodos mais utilizados.
 Atributo prepareStatement:
É usado para criar um objeto que representa a instrução SQL
que será executada, sendo que é invocado através do objeto
Connetion.
 Atributo ResultSet:
É usado para pegar o resultado da instrução SQL e converte-
la para Java.
 Caminho para o banco de dados:
“jdbc:mysql://localhost:3306/nome_do_banco”

Você também pode gostar