1
respuesta

[Duda] Método transferir

¡Hey! Me surge una duda al respecto, es decir, entiendo la lógica del método, sin embargo, no logro comprender del todo ¿cómo es que se le agrega tal (valor) a la cuentaDeJimena siendo que nunca se declara un atributo de saldo para esta cuenta, sé que esto se realiza por medio del método Depositar, pero siguiendo la lógica del método, lo que dice es que saldo = saldo + valor entonces mi duda es: ¿En qué momento se suman esos 1000 (valor) a su cuenta, si nunca se declara ningún saldo?

Quiere decir entonces, que por defecto, saldo = 0 y entonces 0 + 1000 = 1000?

1 respuesta

Buenas Fernando..!.

Tienes razon, si no inicializas el atributo, y creas una instancia de una clase( Cuenta cuentaDeJimena = new Cuenta();) , java inicializa los atributos automaticamente con valores predeterminados.

Los valores predeterminados dependen del tipo de dato del atributo. Aquí tienes algunos ejemplos de los valores predeterminados para diferentes tipos de datos en Java:

  • Para tipos numéricos enteros (byte, short, int, long): se inicializan a 0.
  • Para tipos de punto flotante (float, double): se inicializan a 0.0.
  • Para el tipo boolean: se inicializa a false.
  • Para el tipo char: se inicializa a '\u0000', que es el carácter nulo.
  • Para tipos de referencia (objetos y cadenas): se inicializan a null.

Volviendo ahora al código:

Cuenta cuentaDeJimena = new Cuenta();

cuentaDeJimena.depositar(1000);

Al no inicializar el atributo, o no asignar un valor, lo que hace el método depositar es asignarle el valor al atributo saldo:

public void depositar(double valor) {
         this.saldo += valor;   // es asignar a  this.saldo = this.saldo + valor;
                                           //      this.saldo = 0      +   1000;
 }

Saludos..!