Prezados colegas programadores,
Eu acho que sei o porque do erro, só gostaria de saber se é isso.
Ao executar o código abaixo, ocorre o seguinte erro:
run: Vitor Exception in thread "main" java.lang.NullPointerException at Exercícios.TestaEmpresa.main(Exercicio_v2.java:103) C:\Users\vsampaio\AppData\Local\NetBeans\Cache\8.2\executor-snippets\run.xml:53: Java returned: 1 FALHA NA CONSTRUÇÃO (tempo total: 0 segundos)
Acredito que este erro ocorre porque:
Criei o array dentro da classe Empresa do tipo Funcionario com 10 posições. Logo abaixo criei o funcionario Vitor na posição 0 do Array. Quando peço para ele mostrar o nome de todos os funcionarios no Array, ele mostra Vitor e em seguida ocorre erro porque, por mais que eu tenha criado o array com 10 posições, somente na posição 0 eu criei um Funcionario, faltou nas posições 1 a 10. Neste caso, por mais que eu tenha colocado para continuar quando for null, nem null é, pelo que pude entender, o null neste caso seria "Existe, mas não contem", ou seja, existe o funcionario na posição, mas não contem nome. Eu teria que pelo menos chamar o construtor nas posições 1 a 10. O meu entendimento esta certo ?
public static void main(String[] args){
Empresa empresa = new Empresa();
empresa.funcionarios = new Funcionario[10];
empresa.funcionarios[0] = new Funcionario();
empresa.funcionarios[0].nome = "Vitor";
for(int i = 0; i < empresa.funcionarios.length; i++){
if(empresa.funcionarios[i].nome == null) continue;
System.out.println(empresa.funcionarios[i].nome);
}
}