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

Problema com a data

Pessoal, estou tendo problemas com a data. Não sei bem que parâmetros passo para o set. Segue código.

Classe Funcionario

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

        public String getNome(){
            return this.nome;
        }

        public void setNome(String nome){
            this.nome = nome;
        }

        public String getDepartamento(){
            return this.departamento;
        }

        public void setDepartamento(String departamento){
            this.departamento = departamento;    
        }

        public double getSalario(){
            return this.salario;
        }

        public void setSalario(double salario){
            this.salario = salario;
        }

        public Data getDataEntrada(){
            return this.dataEntrada;
        }

        public void setDataEntrada(Data dataEntrada){
            this.dataEntrada = dataEntrada;
        }

        public String getRg(){
            return this.rg;
        }

        public void setRg(String rg){
            this.rg = rg;
        }

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

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

        public void mostra(){
            System.out.println("Nome: " + this.nome);
            System.out.println("Departamento: " + this.departamento);
            System.out.println("Salario: " + this.salario);
            System.out.println("RG: " + this.rg);
            System.out.println("Ganho anual: R$" + this.getGanhoAnual());
            System.out.println(dataEntrada.dataFormatada());
        }
    }

Classe Data

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

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

    String dataFormatada(){
        return dia + "/" + mes + "/" + ano;
    }
}

Classe TestaFuncionario

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

        /*Funcionario f2 = f1;


        if(f1 == f2){
            System.out.println("iguais");
        } else {
            System.out.println("diferentes");
        }

        f2.mostra();*/

        f1.setNome("José");
        f1.setSalario(230);
        f1.setDepartamento("Developer");
        f1.setRg("447510812"); 

        //Data data = new Data();
        //data.preencheDta(3,4,1988);

        f1.recebeAumento(30);
        f1.setDataEntrada();

        //f1.setDataEntrada = new Data();
        //f1.dataEntrada.dia = 1;
        //f1.dataEntrada.mes = 5;
        //f1.dataEntrada.ano = 1988;

        //f1.mostra();

        System.out.println(f1.getRg());
        System.out.println(f1.getDataEntrada());

    }
}
3 respostas

Oi José,

Esse set recebe como parâmetro um objeto do tipo Data, então é só criar um e passar pra ele

solução!

José

no seu código, esta comentado o seguinte

Data data = new Data();
        data.preencheDta(3,4,1988);      
        f1.setDataEntrada(data);

isso esta certo. Voce instancia um objeto do tipo data, atribui valores para os atributos com o metodo preencheDta e depois artibui o objeto data no atributo DataEntrada do funcionario f1 corretamente.

Para visualizar a data atribuida ao funcionario com o syso, basta fazer o seguinte:

 System.out.println(f1.getDataEntrada().dataFormatada());

Muito obrigado, Thiago e Jefferson.