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

Dúvida no Ex. 6 da Aula 3 - Começando com Orientação a objetos

o meu quando roda não está dando a data certa. segue o código:

class Funcionario {

    String nome;
    String rg;
    String departamento;
    double salario;
    Data dataDeEntrada;


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

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

    void mostra(){
        System.out.println("Nome: " + this.nome);
        System.out.println("RG: " + this.rg);
        System.out.println("Departamento: " + this.departamento);
        System.out.println("Salario: " + this.salario);
        System.out.println("Data de Entrada: " + this.dataDeEntrada);

    }

}

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 testePrograma {

    public static void main(String[] args){

        Funcionario mauricio = new Funcionario();
        mauricio.nome = "Mauricio Fulano";
        mauricio.rg = "18545525";
        mauricio.departamento = "TI";
        mauricio.salario = 788.00;

        mauricio.dataDeEntrada = new Data();
        mauricio.dataDeEntrada.preencheData (12,9,2010);

        mauricio.mostra();

    }


}
3 respostas
solução!

crie o metodo para formatar sua data na classe Data

public String dataFormatada(){

return this.dia+"/"+this.mes+"/"+this.ano; }

depois chame ele no metodo mostra()

void mostra(){

System.out.println("Data de Entrada: " + this.dataDeEntrada.dataFormatada());

}

Interessante!! Vou implementar esse método pra ver se resolve o erro que está dando na execução do programa:

Exception in thread "main" java.lang.NullPointerExceptipn at TestaFuncionario.main(TestaFuncionario.java:52)

onde minha linha 52 está:

f1.dataAdmissao.preencheData(1,10,2000);

Estava com o mesmo problema e funcionou direitinho. Obrigado.