Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Erro- Atividade 9

class Funcionario {
    String nome;
    String departamento;
    double salario;
    Data dataDeEntrada;
    String rg;

    void recebeAumento(double valor) {
        this.salario += valor;
    }

    double calculoGanhaAnual() {
        return this.salario * 12;
    }


    void mostra() {
         System.out.println("Data de entrada: " + this.dataDeEntrada.getFormatada());
    }
}

class Data {
    int dia;
    int mes;
    int ano;

    void preencheData (int dia, int mes, int ano) {
        this.dia = dia;
        this.mes = mes;
        this.ano = ano;
        String getFormatada() {
            return this.dia + "/" + this.mes + "/" + this.ano;
       }
    }
}

class TesteFuncionario {

    public static void main (String[] args) {
        Funcionario f1 = new Funcionario();

        f1.nome = "Hugo";
        f1.salario = 1000;
        f1.recebeAumento(50);
        f1.rg = "123456789";
        f1.departamento = "Vendas";
        f1.dataDeEntrada = new Data();
        f1.dataDeEntrada.preencheData(20, 03, 1950);
        f1.mostra();
    }
}

Funcionario.java:31: error: ';' expected String getFormatada() { ^ 1 error

3 respostas
solução!

Oi Livia, tudo bem ?

Acho que você criou um método dentro de outro :(

class Data {
    int dia;
    int mes;
    int ano;

    void preencheData (int dia, int mes, int ano) {
        this.dia = dia;
        this.mes = mes;
        this.ano = ano;
        String getFormatada() {
            return this.dia + "/" + this.mes + "/" + this.ano;
       }
    }
}

Deveria ficar assim :

class Data {
    int dia;
    int mes;
    int ano;

    void preencheData (int dia, int mes, int ano) {
        this.dia = dia;
        this.mes = mes;
        this.ano = ano;

    }

      String getFormatada() {
            return this.dia + "/" + this.mes + "/" + this.ano;
       }
}

Obrigada !

O que precisar pode abrir um novo tópico