Não consigo Reproduzir a posição dos funcionarios
public class Empresa {
String nome;
Funcionario[] empregados;
double cnpj;
int livre = 0;
private String salario;
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("Funcionário na posição : " + i);
System.out.println("R$" + this.empregados[i].salario);
}
}
void mostraTodasInformcoes() {
for (int i = 0; i < this.livre; i++) {
System.out.println("Funcionarios na Posição " + i);
this.empregados[i].mostra();
}
}
boolean contem(Funcionario f){
for(int i=0;i<this.livre;i++){
if(f == this.empregados[i]){
return true;
}
}
return false;
}
}
public class testaEmpresa {
public static void main(String[] args) {
Empresa empresa = new Empresa();
empresa.empregados = new Funcionario[10];
Funcionario f1 = new Funcionario();
f1.nome = "Pedro Henrique";
f1.anosDeTrabalho = 3;
f1.dpto = "TI";
f1.salario = 4000;
empresa.adiciona(f1);
Funcionario f2 = new Funcionario();
f2.nome = "Luis ";
f2.anosDeTrabalho = 3;
f2.dpto = "Segurança";
f2.salario = 3000;
empresa.adiciona(f2);
empresa.mostraTodasInformcoes();
System.out.println(empresa.contem(f1));
}
}
Funcionarios na Posição 0
Exception in thread "main" java.lang.NullPointerException
at aulaTresOO.Funcionario.mostra(Funcionario.java:30)
at aulaTresOO.Empresa.mostraTodasInformcoes(Empresa.java:26)
at aulaTresOO.testaEmpresa.main(testaEmpresa.java:24)