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

Exercício 3 da aula 6

Não ficou muito claro esse exercício para mim. Alterei minha classe Data igual a da resolução. Como o formata não existia mais, eu substitui.

public class Data { int dia, mes, ano;

public Data(){

}

public Data(int dia, int mes, int ano) { this.dia = dia; this.mes = mes; this.ano = ano;

if (! isDataViavel()) { System.out.println("A data " + isDataViavel() + " não existe!"); }

}

private boolean isDataViavel() { if (dia <= 0 || mes <= 0 || mes > 12 || ano <= 0) { return false; }

int ultimoDiaDoMes = 31; // por padrao são 31 dias if (mes == 4 || mes == 6 || mes == 9 || mes == 11 ) { ultimoDiaDoMes = 30; } else if (mes == 2) { ultimoDiaDoMes = 28; if((ano % 400 == 0) || ((ano % 4 == 0) && (ano % 100 != 0))){ ultimoDiaDoMes = 29; } } if (dia > ultimoDiaDoMes) { return false; }

return true; }

@Override public String toString(){ return dia + "/" + mes + "/" + ano; }

}

Essa lasse ficou sem erros, porém não sei exatamente qual alteração fazer no meu main.

public static void main(String[] args) { // TODO code application logic here

Empresa empresa= new Empresa(); empresa.empregados= new Funcionario[10];

Funcionario f1= new Funcionario();

f1.nome= "Jose dos Santos"; f1.setRG ("87.859.235-7"); f1.departamento= "RH"; //f1.dataDeEntrada= "05/10/2008"; f1.admissao= new Data(); f1.admissao.preencherData(28, 05, 2008); f1.setSalario(3560.0); f1.recebeAumento(500.0); f1.getGanhoAnual(); //f1.exibirAtributos(); empresa.adiciona(f1);

Funcionario f2= new Funcionario();

f2.nome= "Joselino dos Santos"; f2.setRG ("87.859.235-7"); f2.departamento= "RH"; //f2.dataDeEntrada= "05/10/2008"; f2.admissao= new Data(); f2.admissao.preencherData(20, 05, 2008); f2.setSalario(3560.0); f2.recebeAumento(500.0); f2.getGanhoAnual(); //f2.exibirAtributos(); empresa.adiciona(f2); //Funcionario f2= f1;

//if (f1 == f2){ // System.out.println("Funcionário já cadastrado"); //}else { // System.out.println("Novo funcionario cadastrado");

empresa.empregados[0].exibirAtributos(); empresa.empregados[1].exibirAtributos();

System.out.println("---"); empresa.mostrarTodasAsInformações();

}

}

O que devo colocar no lugar de f1.admissao.preencherData(28, 05, 2008); tentei isDataViavel e Data e continua dando erro.

2 respostas

Boa noite, Marília sempre que tiver uma duvida e essa duvida for com código, clilca no botão inserir código e coloca o seu código dentro das aspas que aparecer, assim vai sair formatado e ficaria melhor para lermos seu código

solução!

Não sabia, que tinha que colocar assim, mas tudo bem. Para uma próxima vez, já sei. Olhando mais pro código entendi qual era o meu erro, a dúvida já está solucionada :)