o erro completo:
Exception in thread "main" java.lang.NullPointerException
at src.Conta3.deposita(Conta3.java:22)
at src.TesteContas.main(TesteContas.java:5)
código:
package src;
public class Cliente {
private String nome = "Sem Nome";
private String CPF = "sem.cpf.000-00";
private String emprego = "desempregado";
private String nomeConta = "semnome";
public String getNome() {
return this.nome;
}
public String getCPF() {
return this.CPF;
}
public String getEmprego() {
return this.emprego;
}
public String getNomeConta() {
return this.nomeConta;
}
public void setNome(String nome) {
this.nome = nome;
}
public void setCPF(String CPF) {
this.CPF = CPF;
}
public void setEmprego(String emprego) {
this.emprego = emprego;
}
public void setNomeConta(String nomeConta) {
this.nomeConta = nomeConta;
}
}
package src;
public class Conta3 {
private double saldo;
private int agencia = 1541;
private int numero = 15453;
private Cliente titular;
private static int quantidadeContas;
public Conta3(int agencia, int numero) {
Conta3.quantidadeContas++;
System.out.println("o total de contas agora é de " + Conta3.quantidadeContas + " contas");
this.agencia = agencia;
this.setNumero(numero);
System.out.println("cersisaancdoonctoanetda;oida");
}
public void deposita(double valor) {
if (valor > 0) {
this.saldo += valor;
System.out.println("O valor foi depositado com sucesso!");
System.out.println("Agora a conta " + this.titular.getNomeConta() + " tem R$" + this.saldo + "!");
} else {
System.out.println("O SISTEMA NÃO É BURRO, RESPEITE OS PROGRAMADORES!");
}
System.out.println();
}
public void saca(double valor) {
if (valor > 0) {
if (valor <= this.saldo) {
this.saldo -= valor;
System.out.println("O valor foi sacado com sucesso!");
System.out.println("Agora a conta " + this.titular.getNomeConta() + " tem R$" + this.saldo + "!");
} else {
System.out.println("Infelizmente, não há dinheiro o suficiente na conta " + this.titular.getNomeConta()
+ " para sacar R$" + valor);
}
} else {
System.out.println("O SISTEMA NÃO É BURRO, RESPEITE OS PROGRAMADORES!");
}
System.out.println();
}
public void transfere(double valor, Conta3 destino) {
if (this != destino && this.saldo >= valor) {
this.saldo -= valor;
destino.saldo += valor;
System.out.println("O valor foi transferido com sucesso!");
System.out.println("Agora a conta " + this.titular.getNomeConta() + " tem R$" + this.saldo + ", e a conta "
+ destino.titular.getNomeConta() + ", R$" + destino.saldo + "!");
} else if (this == destino) {
System.out.println("O SISTEMA NÃO É BURRO, RESPEITE OS PROGRAMADORES!");
} else {
System.out.println("Infelizmente não há dinheiro o suficiente na conta origem");
}
System.out.println();
}
public double getSaldo() {
return this.saldo;
}
public int getAgencia() {
return this.agencia;
}
public int getNumero() {
return this.numero;
}
public void setAgencia(int agencia) {
if (agencia > 0) {
this.agencia = agencia;
} else {
System.out.println("O SISTEMA NÃO É BURRO, RESPEITE OS PROGRAMADORES!");
}
}
public void setNumero(int numero) {
if (numero > 0) {
this.numero = numero;
} else {
System.out.println("O SISTEMA NÃO É BURRO, RESPEITE OS PROGRAMADORES!");
}
}
public static int getQuantidadeContas() {
return Conta3.quantidadeContas;
}
}
package src;
public class TesteContas {
public static void main(String[] args) {
ContaCorrente contaCorrente = new ContaCorrente(111, 111);
contaCorrente.deposita(100);
ContaPoupanca contaPoupanca = new ContaPoupanca(222, 222);
contaPoupanca.deposita(200);
}
}
alguém pode me ajudar?