Olá, segue meu código..
class Pessoa {
String nome;
String RG;
String cpf;
String dataNascimento;
}
class Funcionario{
String departamento;
double salario;
Data dataEntrada;
Pessoa pessoa;
void recebeAumento(double novoSalario){
this.salario = novoSalario;
}
double calculaGanhoAnual() {
return this.salario * 12;
}
void mostra() {
System.out.println("----Dados Do Funcionario----");
System.out.println("Nome: " + this.pessoa.nome);
System.out.println("RG: " + this.pessoa.RG);
System.out.println("CPF: " + this.pessoa.cpf);
System.out.println("Data Nascimento: " + this.pessoa.dataNascimento);
System.out.println("Departamento: " + this.departamento);
System.out.println("Salario: " + this.salario);
System.out.println("Data Entrada: " + this.dataEntrada.getFormata());
System.out.println("Ganho anual: " + this.calculaGanhoAnual());
}
}
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 getFormata(){
return this.dia + "/" + this.mes + "/" + this.ano;
}
}
class Empresa {
String nome;
String cnpj;
String endereco;
Funcionario[] empregados;
int livre = 0;
void adiciona(Funcionario f){
this.empregados[this.livre] = f;
this.livre++;
}
void mostraEmpregados(){
for(int i = 0; i < this.empregados.length; i++){
System.out.println("-- Func" + i+1 + " --");
System.out.println("Nome: " + this.empregados[i].pessoa.nome);
System.out.println("Salario: " + this.empregados[i].salario);
}
}
void dadosEmpresa(){
System.out.println("----Dados da Empresa----");
System.out.println("Nome Epresa: " + this.nome);
System.out.println("CNPJ: " + this.cnpj);
System.out.println("Endereço: " + this.endereco);
System.out.println();
}
}
class TestaEmpresa {
public static void main(String[] args){
Empresa empresa = new Empresa();
empresa.empregados = new Funcionario[5];
empresa.empregados[0] = new Funcionario();
empresa.empregados[0].pessoa = Pessoa(); /*Essa linha está correta ?? Se não, como eu faço para instanciar essa classe da maneira correta??*/
empresa.nome = "teste";
empresa.empregados[0].departamento = "vendas";
empresa.empregados[0].pessoa.nome = "Marko"; // Pretendo usar a classe Pessoa para mostrar o nome do funcionario
System.out.println(empresa.nome);
System.out.println(empresa.empregados[0].departamento); //Isto funciona..
System.out.println(empresa.empregados[0].pessoa.nome);//Logo, essa linha tbm não funfa .. :/
}
}
Segui no terminal erro
Funcionario.java:92: error: cannot find symbol
empresa.empregados[0].pessoa = Pessoa();
^
symbol: method Pessoa()
location: class TestaEmpresa
1 error