Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Dúvida no tópico de Transferir

Não estou conseguindo compilar meu código: Não reconhece o Conta destino e nem o valor, também pede para colocar uma vírgula depois do Transferir:

Segue código:

public class Conta { double saldo; int agencia; int numero; String titular;

public void depositar(double valor) {
    this.saldo += valor;
    System.out.println("Seu saldo após o depósito é de: " + this.saldo + " R$");
}

public boolean sacar(double valor) {

    if (this.saldo >= valor) {
        this.saldo -= valor;
        System.out.println("Seu saldo após o saque é de: " + this.saldo + " R$");
        return true;
    } else {
        System.out.println("Você não tem dinheiro sufiente par está operação!");
        return false;
    }

    public boolean transferir ( double valor, Conta destino){
        if (this.saldo >= valor) {
            saldo -= valor;
            destino.depositar(valor);
            System.out.println("Seu saldo após a transferência é de: " + this.saldo + " R$");
            return true;
        } else {
            System.out.println("Você não tem dinheiro sufiente par está operação!");
            return false;
        }
    }
}

}

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

1 resposta
solução!

Boa tarde, Matheus.

O problem do código é que o método transferir foi criado dentro do método sacar.

Perceba que as chaves que delimitam o escopo do método sacar estão sendo abertas na linha 12 e fechadas na linha 34, enquanto que as chaves que delimitam o escopo do método transferir estão abrindo na linha 23 e fechando na linha 33.

Para que funcione, mova o método transferir para fora do método sacar.

Não seria necessário nessa classe, mas vale pontuar que o Java é uma linguagem que não permite métodos aninhados.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software