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

nao consigo inserir a data no metodo mostra

nao to conseguindo inserir a data no metodo mostra ja tentei de varias maneiras mas nao deu certo me de uma ajuda por favor e me explique onde estou errando

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

    void recebeAumento(double valorDoAumento){
        this.salario += valorDoAumento;
    }
    void calculaGanhoAtual(){
        this.salario = this.salario *12;
    }
    void mostra(){
        System.out.println(("Funcionario: "+this.nome)+("Departamento: "+this.departamento)+("Salario atual: "+this.salario)+("Data de entrada: "+dataEntrada));
    }
}
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;
    }

}
class teste{
    public static void main(String[] args) {
        Funcionario ceci = new Funcionario();
        ceci.nome = "C";
        ceci.departamento = "Financeiro";
        ceci.salario = 1000.0;    

        ceci.dataEntrada = new Data();
        ceci.dataEntrada.preencheData(1,12,1986);

        ceci.recebeAumento(1000.0);
        ceci.calculaGanhoAtual();        
        ceci.mostra();

        Funcionario alb = new Funcionario();
        alb.nome = "A";
        alb.departamento = "RH";
        alb.salario = 1000.0;
        alb.recebeAumento(100.0);
        alb.mostra();

    }
}
3 respostas

Quando você executar, qual erro é mostrado? Coloca aqui, aí a gente te ajuda.

Nao aparece a data aparece esse numero grande

C:\Users\Cecilio\Desktop\Desktop\java>java teste
Funcionario: CDepartamento: FinanceiroSalario atual: 24000.0Data de entrada: Data@15db9742
Funcionario: ADepartamento: RHSalario atual: 1100.0Data de entrada: null
solução!

substitua class Funcionario{ /// atributos... Data dataEntrada;

por class Funcionario{ String nome; String departamento; double salario; Data dataEntrada = new Data();

assim toda vez que funcionario for chamado automaticamente data será chamada.

percebi que não há um new data em lugar algum