Olá fiz a resolução parecido com o enunciado, porém no meu código funciona mas errado, ele compila normal e executa porem em vez de aparecer a data ele apresenta caracteres. Segue abaixo o código.
insira seu código aqui
class funcionarioData {
String nome;
int idade;
String endereco;
String telefone;
String funcao;
double salario;
Data dataDeAdmissao; // Acredito que o erro esteja aqui, fiz igual a resolução
// Se eu usar String ou int antes de dataDeAdmissao; da erro e não sei o porque.
double calculaGanhoAnual () {
return this.salario * 12;
}
void mostra() {
System.out.println("Nome: " + this.nome);
System.out.println("Idade: " + this.idade + " Anos");
System.out.println("Endereço: " + this.endereco);
System.out.println("Telefone: " + this.telefone);
System.out.println("Função: " + this.funcao);
System.out.println("Salario Mensal: " + this.salario);
System.out.println("Ganho Anual: " + this.calculaGanhoAnual());
System.out.println("Data de Admissão: " + this.dataDeAdmissao); // Add this. como nos outros
System.out.println("Data de Admissão: " + dataDeAdmissao); // retirei o "this.", mesmo erro.
}
}
class Data {
int dia;
int mes;
int ano;
void inserirData(int dia, int mes, int ano){
this.dia = dia;
this.mes = mes;
this.ano = ano;
}
}
class dadosFuncionarioData {
public static void main (String[] args) {
funcionarioData func001 = new funcionarioData();
func001.nome = "João da Silva";
func001.idade = (35);
func001.endereco = "Rua Pitanga, 222";
func001.telefone = "4374-2844";
func001.funcao = "Contador";
func001.salario = (1800.0);
func001.dataDeAdmissao = new Data();
func001.dataDeAdmissao.inserirData(12, 5, 1999);
func001.mostra();
}
}
No console do Cmder ele aparece isso. Obs: escrevi o código no bloco de notas.
C:\Users\Henrique Gino\Desktop\Cursos alura\Java I, Primeiros passos>java dadosFuncionarioData Nome: João da Silva Idade: 35 Anos Endereço: Rua Pitanga, 222 Telefone: 4374-2844 Função: Contador Salario Mensal: 1800.0 Ganho Anual: 21600.0 Data de Admissão: Data@6fffcba5 Data de Admissão: Data@6fffcba5