Criei o código Conta.java como na aula:
public class Conta {
double saldo;
int agencia;
int numero;
String titular;
public void deposita(double valor){
this.saldo += valor;
}
public boolean saca(double valor){
if (this.saldo >= valor){
this.saldo -= valor;
return true;
} else {
return false;
}
}
public boolean transfere(double valor, Conta destino, Conta origem){
if (this.saldo >= valor){
this.saldo -= valor;
destino.deposita(valor);
return true;
} else {
return false;
}
}
}
E criei o testeMetodo.java.
public class testeMetodo {
public static void main(String[] args) {
Conta conta = new Conta();
conta.saldo = 100;
conta.deposita(50);
System.out.println(conta.saldo);
boolean conseguiuRetirar = conta.saca(20);
System.out.println(conta.saldo);
System.out.println(conseguiuRetirar);
Conta contaDaMarcela = new Conta();
contaDaMarcela.deposita(1000);
contaDaMarcela.transfere(300, conta);
System.out.println(contaDaMarcela.saldo);
}
}
Quando tento compilar o testeMetodo, aparece o seguinte erro Error:(15, 23) java: method transfere in class Conta cannot be applied to given types; required: double,Conta,Conta found: int,Conta reason: actual and formal argument lists differ in length
Oque tem de errado?