Boa tarde pessoal
Exercitando a orientação a objetos via apostila caelum, escrevi o seguinte código
public class Conta {
private static int seq = 0;
private int num;
private Cliente titular;
private double saldo;
private double limite;
//Construtor que recebe os atributos como parâmetros.
public Conta(Cliente titular, double saldo, double limite){
num = ++seq;
this.titular = titular;
this.saldo = saldo;
this.limite = limite;
}
public int getNum(){
return this.num;
}
public class CadContas {
public static Conta[] listaContas = new Conta[10];
public static Conta pesqConta(int num){
for(Conta obj : listaContas){
if(obj.getNum() == num){
return obj;
}
}
return null;
}
}
import java.util.Scanner;
public class Usuario {
public static Scanner leia = new Scanner(System.in);
public static void main(String[] args) {
pesqClienteConta();
}
private static void pesqClienteConta() {
int num;
System.out.println("===========PESQUISA DE CLIENTE POR NÚMERO DA CONTA===========");
System.out.print("Entre com o número: ");
num = leia.nextInt();
Conta objConta = CadContas.pesqConta(num);
if (objConta == null) {
System.out.println("Número de conta inexistente no sistema.");
} else {
objConta.mostra();
}
}
}
Tudo está fucionando corretamente, contudo quando digito um código inexistente, mesmo tendo criado a condição if (objConta == null) {System.out.println(“Número de conta inexistente no sistema.”);}, recebo um null pointer exception, alguém saberia explicar por que?
Obrigado