O Compilador expõe o seguinte erro
“Conta.java:43: error: incompatible types: void cannot be converted to boolean
boolean retirou = this.saca(valor);”
^
Trecho do código da Apostila Caleum Java e Programação Orientada a Objetos v 17.0.6.
class Conta
{
// atributos e métodos...
boolean transfere(Conta destino, double valor)
{
boolean retirou = this.saca(valor); // <--- linha do erro descrito acima...
if (retirou == false)
{
// não deu pra sacar!
return false;
}
else
{
destino.deposita(valor);
return true;
}
}
}
Classe Conta Com os outros métodos da apostila que eu fiz e deu o erro
class Conta // objeto
{
int numero;
String dono;
double saldo;
double limite;
double salario;
void saca(double quantidade)
{
double novoSaldo = this.saldo - quantidade;
this.saldo = novoSaldo;
}
boolean sacaRetorna(double valor)
{
if(this.saldo < valor)
{
return false;
}
else
{
this.saldo -= valor;
return true;
}
}
void deposita(double quantidade)
{
this.saldo += quantidade;
}
void transfere(Conta destino, double valor)
{
this.saldo = this.saldo - valor;
destino.saldo = destino.saldo + valor;
}
boolean transfereRetorna(Conta destino, double valor)
{
boolean retirou = this.saca(valor); // <-- erro
if (retirou == false)
{
// não deu para sacar
return false;
}
else
{
destino.deposita(valor);
return true;
}
}
}