Creo pero no estoy muy seguro que en realidad el metodo public void deposita(double valor) { saldo += valor; } va a tener un error cuando sea llamado ya que al instanciar el objeto el saldo se inicializa como nulo y al intentar agregar saldo va a tirar error. si bien no deberia tener el metodo setSaldo por cuestiones de seguridad en este caso es necesario ya que hay que darle un valor inicial ya sea 0 para que al llamar el metodo deposita no tire error al intentar sumar el valor + null