Estou fazendo exercícios da apostila Caleum fj11 e naum estou conseguindo chamar o método mostra() da class Funcionario alguem pode me dar uma luz agradecido desde já!
Segue a baixo o código.
[code]class Data {
int dia;
int mes;
int ano;
}
class Funcionario {
String nome;
double salario;
String departamento;
Data dataDeEntrada;
String rg;
boolean estaNaEmpresa;
void bonifica(double aumento) {
this.salario = this.salario + aumento;
}
void demite() {
this.estaNaEmpresa = false;
}
void mudaDeDepartamento(String novoDepartamento) {
this.departamento = novoDepartamento;
}
void mostra() {
System.out.println("Nome: " + this.nome);
System.out.println("Departamento: " + this.departamento);
System.out.println("Data de entrada: " + this.dataDeEntrada.dia + "/" + this.dataDeEntrada.mes + "/" + this.dataDeEntrada.ano);
System.out.println("Portador do RG: " + this.rg);
System.out.println("Salario atual: " + this.salario);
if (!this.estaNaEmpresa) {
System.out.println("Infelizmente o funcionario foi demitido!");
}else {
System.out.println("Esta ativo na empresa!");
}
}
}
class Empresa {
Funcionario[] empregados;
String cnpj;
void adiciona(Funcionario f) {
for (int i = 0; i < this.empregados.length; i++) {
if(this.empregados[i] == null) {
this.empregados[i] = f;
break;
}
}
}
void mostraEmpregados() {
int i = 0;
while(this.empregados[i] != null) {
System.out.println("Funcionario na posição: " + i);
System.out.println("Salario: " + this.empregados[i].salario);
i++;
}
}
}[/code]
[code]class TestaEmpresa {
public static void main(String[] args) {
Empresa empresa = new Empresa();
empresa.empregados = new Funcionario[10];
for (int i = 0; i < 4; i++) {
Funcionario f = new Funcionario();
f.salario = 100 + i * 100;
empresa.adiciona(f);
}
empresa.mostraEmpregados();
}
}[/code]
Não sei bem onde chamar esse metodo se é na class empresa ou na class TestaEmpresa.
Agradeço pela atenção!