Problema na instanciação do ibjeto

1 resposta
P
Classe Data
import java.util.GregorianCalendar;
public class Data{
    private int dia;
    private int mes;
    private int ano;
    // constrói o objeto Data com os valores recebidos via parâmetros
    public Data(int d, int m, int a){
        setAno(a);
        setMes(m);
        setDia(d);
    }
    // constrói o objeto Data com a data recebida no formato inteiro AAAAMMDD
    public Data (int data){
        setAno(data / 10000);
        setDia (data % 100);
        setMes( data % 10000 / 100);
    }
    // constrói o objeto Data com a data atual
    public Data(){
        GregorianCalendar c = new GregorianCalendar();
        dia = c.get(GregorianCalendar.DAY_OF_MONTH);
        mes = c.get(GregorianCalendar.MONTH)+1;
        ano = c.get(GregorianCalendar.YEAR);
    }
    public String getDataPadrao(){
        return dia + "/" + mes + "/" + ano;
    }
    public int getDataInvertida(){
        return ano * 10000 + mes * 100 + dia;
    }
    public boolean ehBissexto(){
        if (ano % 4 == 0){
            return true;
        }else{
            return false;
        }
    }
    public void setDia(int d){
        dia = d;
    }
    public void setMes(int m){
        mes = m;
    }
    public void setAno(int a){
        ano = a;
    }
    public int getDia(){
        return dia;
    }
    public int getMes(){
        return mes;
    }
    public int getAno(){
        return ano;
    }
}
Classe Departamento
public class Departamento{
    private int codDepto;
    private String nomeDepto;
    private int qtdFunc;
    
    public Departamento(int codigoDepto, String nomeDoDepto){
        codDepto = codigoDepto;
        nomeDepto = nomeDoDepto;
    }
    
    public void setCodDepto(int codigoNovo){
        if (codigoNovo > 0 && codigoNovo < 6){
            codDepto = codigoNovo;
        }else{
            codDepto = 1;
        }
    }
    public void setNomeDepto(String novoNome){
        nomeDepto = novoNome;
    }
    public int getCodDepto(){
        return codDepto;
    }
    public String getNomeDepto(){
        return nomeDepto;
    }
    public int getQtdFunc(){
        return qtdFunc;
    }
    public void saiFuncionarioDoDepto(){
        qtdFunc--;
    }
    public void entraFuncionarioNoDepto(){
        qtdFunc++;
    }
    public String dadosDoDepartamento(){
        return ("Nome do departamento: " + nomeDepto + "; Código do departamento: " + codDepto + "; Quantidade de funcionarios: " + qtdFunc);
    }
    
}
Classe Funcionario
public class Funcionario{
    private String nome;
    private double salario;
    private Data dataDeNasc;
    private Data dataDeAdmissao;
    private Departamento departamento;
    
    public Funcionario(String n, double sal, Departamento depto, Data dataNasc, Data dataAdmissao){
        nome = n;
        salario = sal;
        dataDeNasc = dataNasc;
        dataDeAdmissao = dataAdmissao;
        departamento = depto;
    }
    public Funcionario(String n, double sal, Departamento depto, Data dataNasc, int diaAdmissao, int mesAdmissao, int anoAdmissao){
        nome = n;
        salario = sal;
        dataDeNasc = dataNasc;
        dataDeAdmissao = new Data(diaAdmissao, mesAdmissao, anoAdmissao);
        departamento = depto;
    }
    public Funcionario(String n, double sal, Data dataNasc, Data dataAdmissao){
        nome = n;
        salario = sal;
        dataDeNasc = dataNasc;
        dataDeAdmissao = dataAdmissao;
    }
    
    public void setSalario(double novoSalario){
        salario = novoSalario;
    }
    public void aloca(Departamento novoDepto){
        departamento = novoDepto;
    }
    public int claculaIdade(){
        return new Data().getDataInvertida() - dataDeNasc.getDataInvertida(); 
    }
    
}

bom pessoal, é o seguinte. eu tenho que fazer este trabalho para a facul, mas to em duvida na instanciação do objeto funcionario. gostaria de saber se meus construtores da classe estão certos.

Estou usando o BlueJ, mas na hora em que eu crio o funcionario, ele não aceita a data nesse formato 25/09/1993. por isso eu acho que meu problema possa ser no construtor do Funcionario.

bom. eu gostaria que avaliassem meu código e dissessem o que eu devo mudar

JA RESOLVI. OBRIGADO

1 Resposta

d34d_d3v1l

coloca resolvido no título “Assunto” do tópico,
para que pessoas (como eu) não percam tempo lendo…

abraços

Criado 24 de abril de 2011
Ultima resposta 24 de abr. de 2011
Respostas 1
Participantes 2