Boa tarde!
Na linha indicada abaixo com (AQUI->>>), o atributo ‘conta’ está com o erro de ‘NullPointerException’.
Se alguém puder me ajudar, agradeço muito!
public abstract class Pessoa {
Conta conta; //Se uma pessoa deve ter uma conta, uma pf e uma pj por herdar seus atributos tbm terá.
private String nome;
private static int totalDePessoas;
public void setNome(String nome){
this.nome = nome;
}
public String getNome(){
return nome;
}
public static int getTotalDePessoas(){
return Pessoa.totalDePessoas;
}
Pessoa(){
this.totalDePessoas = totalDePessoas + 1;
}
Pessoa(Conta c){
this.conta = c;
}
}
public abstract class Conta {
//implementar tudo da outra outra conta
private int numeroDaConta;
public void setNumeroDaConta(int numeroDaConta){
this.numeroDaConta = numeroDaConta;
}
public int getNumeroDaConta(){
return this.numeroDaConta;
}
}
public class Main {
public static void main(String[] args){
ContaPoupanca cp = new ContaPoupanca();
cp.setNumeroDaConta(1);
ContaCorrente ccpf = new ContaCorrente();
ccpf.setNumeroDaConta(2);
PessoaFisica pf = new PessoaFisica(cp, ccpf);
pf.setNome(“nome”);
pf.setCpf(“cpf”);
AQUI ->>>System.out.println("\nNumero da conta poupança é: " + pf.conta.getNumeroDaConta());
}
public class PessoaFisica extends Pessoa{
private String cpf;
private static int totalDePessoasFisicas;
public void setCpf(String cpf){
this.cpf = cpf;
}
public String getCpf(){
return this.cpf;
}
public static int getTotalDePessoas(){
return PessoaFisica.totalDePessoasFisicas;
}
//Aqui ou eu faço o construtor exigindo as duas contas e eu posso colocar null em uma delas, quando eu for criar um objeto do tipo PessoaFisica ou crio dois
//construtores. Um pra cada tipo de conta.
public PessoaFisica(ContaPoupanca cp, ContaCorrente cc) {
this.totalDePessoasFisicas = totalDePessoasFisicas + 1;
}
}
public class PessoaJuridica extends Pessoa {
private String cnpj;
private static int totalDePessoasJuridicas;
public void setCnpj(String cnpj){
this.cnpj = cnpj;
}
public String getCnpj(){
return this.cnpj;
}
public static int getTotalDePessoas(){
return PessoaJuridica.totalDePessoasJuridicas;
}
//Pela regra de negócio, PessoaJurídica deve ter uma ContaCorrente.
public PessoaJuridica(ContaCorrente c) {
this.totalDePessoasJuridicas = totalDePessoasJuridicas + 1;
}
}
public class ContaPoupanca extends Conta{
}
public class ContaCorrente extends Conta{
}