Tentei deixar a invocação do método da maneira mais simples possível dentro do que entendi e toda parte de verificação na declaração do método.
Aceito sugestões para melhorar.
public class Conta {
String nome;
int idade;
String endereco;
int agencia;
String numeroConta;
double saldo;
public boolean saca(double valor) {
if (this.saldo >= valor) {
this.saldo -= valor;
return true;
} else {
return false;
}
}
public boolean deposita(double valor) {
if (this.saldo >= valor) {
this.saldo += valor;
return true;
} else {
return false;
}
}
//usei o this para buscar os nomes e valores caso exista mais contas
public boolean transfere(double valor, Conta destino) {
if (this.saldo >= valor) {
this.saldo -= valor;
destino.deposita(valor);
System.out.println("vc transferiu " + valor + " para " + destino.nome);
System.out.println(this.nome + " seu saldo atual é " + this.saldo + " reais");
return true;
} else {
System.out.println("saldo insulficiente, saldo atual é de " + this.saldo);
return false;
}
}
}
E aqui o testaMétodo
public class testaMetodo {
public static void main(String[] args) {
Conta contaGabriel = new Conta();
contaGabriel.nome = "Gabriel de Araújo";
contaGabriel.saldo = 300;
boolean conseguiuDepositar = contaGabriel.deposita(150);
//System.out.println(contaGabriel.saldo);
boolean conseguiuSacar = contaGabriel.saca(200);
//System.out.println(contaGabriel.saldo);
Conta contaLeticia = new Conta();
contaLeticia.nome = "Leticia";
contaLeticia.saldo = 100;
contaGabriel.transfere(300, contaLeticia);
}
}