Apesar de o meu código compilar, quando eu tendo evocar o método adicionar criado, ele da erro. Já tentei e não consigo encontrar meu erro.
class Empresa{
String nomeEmpresa;
String cnpjEmpresa;
Funcionario[] empregados;
int i = 0;
void adiciona(Funcionario f){
this.empregados[this.i]=f;
this.i++;
}
void mostraEmpresa(){
System.out.println("Nome da empresa : "+nomeEmpresa);
System.out.println("CNPJ : "+cnpjEmpresa);
System.out.println();
}
}
class Funcionario{
String nome;
String departamento;
double salario;
Data dataDeEntrada;
String RG;
void recebeAumento(double aumento){
this.salario += aumento;
}
double calculaGanhoAnual(){
return this.salario*12;
}
void mostraFuncionario(){
System.out.println("Nome : "+this.nome);
System.out.println("Departamneto : "+this.departamento);
System.out.println("Salario : "+this.salario);
System.out.println("Data de Entrada : "+this.dataDeEntrada.dataFormatada());
System.out.println("RG : "+this.RG);
System.out.println("Salariorio Anual : "+this.calculaGanhoAnual());
System.out.println();
}
}
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;
}
String dataFormatada(){
return this.dia+"/"+this.mes+"/"+this.ano;
}
}
class Cadastro{
public static void main(String[]args){
//Criando a empresa
Empresa emp = new Empresa();
emp.nomeEmpresa = "Gamei";
emp.cnpjEmpresa = "618.486.486-50";
//Imprime dados da empresa
emp.mostraEmpresa();
//Criando Array
Funcionario empregados[] = new Funcionario[10];
//Criando Funcionario F1
Funcionario F1 = new Funcionario();
F1.nome = "Octy";
F1.departamento = "Game Design";
F1.salario = 7000.00;
F1.RG = "687.786.687-X";
F1.dataDeEntrada = new Data();
F1.dataDeEntrada.preencheData(05,07,2016);
//Imprime dados do funcionario F1
F1.mostraFuncionario();
//Criando Funcionario F2
Funcionario F2 = new Funcionario();
F2.nome = "Bya";
F2.departamento = "Assistente do Game Designer";
F2.salario = 4000.00;
F2.RG = "486.354.456-Z";
F2.dataDeEntrada = new Data();
F2.dataDeEntrada.preencheData(12,10,2016);
//Imprime dados do funcionario F2
F2.mostraFuncionario();
}
}