Ola pessoal! gostaria que vocês me ajudacem sobre a diferença da instância desses objetos.
Pois um está sendo instanciado como parâmetro do método e o outro no escopo da classe.
//A classe Cliente está instanciada como parâmetro.
public void gravaDados(Cliente cliente){
try{
abreBanco();
String query = "INSERT INTO clientes (nome, sobrenome, email, idade, telefone, sexo) VALUES (?, ?, ?, ?, ?, ?)";
pstmt = conn.prepareStatement(query);
pstmt.setString(1, cliente.getNome());
pstmt.setString(2, cliente.getSobrenome());
pstmt.setString(3, cliente.getEmail());
pstmt.setInt(4, cliente.getIdade());
pstmt.setString(5, cliente.getTelefone());
pstmt.setString(6, cliente.getSexo());
JOptionPane.showMessageDialog(null, "Dados cadastrados com sucesso!!!");
pstmt.executeUpdate();
fechaBanco();
} catch(SQLException exe){
JOptionPane.showMessageDialog(null, "Erro ao inserir: " + exe);
}
}
E aqui em baixo está no escopo da classe. qual a diferença de uma forma para a outra? Se puderem me ajudar desde já Obrigado.
Espero que eu tenha cido claro.
package jdbc.mysql.teste;
import javax.swing.JOptionPane;
public class Servisos {
//instancia no escopo da classe.
Cliente cliente = new Cliente();
Cadastra cadastra = new Cadastra();
public void pegaDados() {
cliente.setNome(JOptionPane.showInputDialog("Informe o nome:"));
cliente.setSobrenome(JOptionPane
.showInputDialog("Informe o sobrenome:"));
cliente.setEmail(JOptionPane.showInputDialog("Informe o e-mail:"));
cliente.setIdade(Integer.parseInt(JOptionPane
.showInputDialog("Informe a idade:")));
cliente.setTelefone(JOptionPane.showInputDialog("Informe o telefone:"));
cliente.setSexo(JOptionPane.showInputDialog("Informe o sexo:"));
cadastra.gravaDados(cliente);
}
}
Ate++