¿Por qué me sale NullPointerException cuando deposito dinero en mi clase CuentaSaldo?
Estoy haciendo una clase llamada CuentaSaldo y tengo que depositar 4000.0 y luego llamar al método getSaldo(), para verificar que yo deposite esa cantidad. Estoy usando JUnit, me sale todo en color rojo y el NullPointedException me pone que ocurre en las operaciones que realizo en el método depositar() y en la parte del test donde llamo a ese método para ingresar la cantidad que quiero depositar en mi cuenta. Ahora les paso el código :
public class CuentaSueldo {
protected Integer numero;
protected String nombre;
protected String apellido;
protected Double saldo;
public CuentaSueldo() {
}
public CuentaSueldo(Integer numero, String nombre, String apellido, Double saldo) {
this.numero = numero;
this.nombre = nombre;
this.apellido = apellido;
this.saldo = saldo;
}
public CuentaSueldo(Double saldo) {
this.saldo = saldo;
}
public CuentaSueldo(Integer numero, String apellido, String nombre) {
this.numero = numero;
this.apellido = apellido;
this.nombre = nombre;
this.saldo = 0.0;
}
public Integer getNumero() {
return numero;
}
public void setNumero(Integer numero) {
this.numero = numero;
}
public String getNombre() {
return nombre;
}
public void setNombre(String nombre) {
this.nombre = nombre;
}
public String getApellido() {
return apellido;
}
public void setApellido(String apellido) {
this.apellido = apellido;
}
public Double getSaldo (){
return this.saldo;
}
public void setSaldo(Double saldo) {
this.saldo = saldo;
}
public void depositar (double cantidad){
if(cantidad>0.0D){
this.saldo = this.saldo + cantidad; //Aca sale nullexception
}
}
public void extraer (double cantidad){
if(cantidad <= this.saldo){
this.saldo = this.saldo - cantidad;
}
}
}
import static org.junit.Assert.*;
import org.junit.Test;
public class TestCuentaBancaria {
@Test
public void test() {
CuentaSueldo cuenta = new CuentaSueldo();
cuenta.depositar(4000.0D);//Aca sale nullexception
Double sueldoEsperado=4000.0D;
Double sueldoActual= cuenta.getSaldo();
assertEquals(sueldoEsperado, sueldoActual);
}
}
1 respuesta
Respuesta de Joseka Peñito