public boolean transfere(double valor, Conta destino) { if (this.saldo >= valor) { this.saldo -= valor; destino.deposita(valor); return true; } else { return false; } }
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
public boolean transfere(double valor, Conta destino) { if (this.saldo >= valor) { this.saldo -= valor; destino.deposita(valor); return true; } else { return false; } }
Fala Rafael, Tudo bem ? Quando você recebe o parâmetro Conta destino, está recebendo uma referencia de conta, essa referencia indica um objeto. Por Exemplo:
Conta contaRafael = new Conta();
Conta contaTerceiro = new Conta();
contaRafael.transfere( 100.0, contaTerceiro );
// o que acontece no metodo
public boolean transfere( 100.0 , contaTerceiro ){
if( contaRafael.saldo >= 100.0 ){
contaRafael.saldo -= 100.0;
contaTerceiro.deposita(100.0);
return true;
} else {
return false;
}
}Então no exemplo é passado uma conta que recebera o valor, por esse motivo é necessário que passe a conta dentro da própria classe.
Espero ter ajudado, abraço!