-2
Main class presenting problem in the call of the method createNew:
case 1:
cliente = new Cliente();
cliente.setNome(JOptionPane.showInputDialog("Nome: "));
cliente.setCpf(Long.parseLong(JOptionPane
.showInputDialog("Cpf: ")));
try {
cliente.criaNovaConta();
JOptionPane.showMessageDialog(
null,
"Nome: " + cliente.getNome() + "\nCpf: "
+ cliente.getCpf()
+ "\nNúmero da conta corrente: "
+ cliente.conta.getNumeroConta());
} catch (RuntimeException re) {
System.out.println("Erro ao gerar número de conta: " + re);
}
try {
banco.inserirCliente(cliente);
} catch (RuntimeException re) {
System.out.println("Erro ao inserir novo cliente: " + re);
}
break;
The methods of my client class:
public ContaBancaria conta;
public Cliente() {
}
public void criaNovaConta() {
conta = new ContaBancaria();
conta.setNumeroConta();
}
My Bank Account class method related to the problem:
public void setNumeroConta() {
boolean achou = false;
int nConta = aleatorio.nextInt(10000) + 99999;
for (Cliente c : banco.clientes) {
if (c.conta.numeroConta == nConta) {
achou = true;
}
}
if (achou) {
setNumeroConta();
} else {
this.numeroConta = nConta;
}
}
The method of my Bank class concerning the problem:
List<Cliente> clientes;
public void inserirCliente(Cliente cliente) {
clientes.add(cliente);
JOptionPane.showMessageDialog(null, "Conta cadastrada com sucesso!");
}
You probably didn’t associate a
conta
to the customer. You should docliente.setConta(new Conta())
, and thencliente.getConta().setNumeroConta()
, or something like that.– Math
How is your class
Cliente
andConta
??– Wellington Avelino
Take a look here: What is Nullpointerexception and what are its main causes?
– Math