Meu nome é Cesar e estou com dificuldades na utilização de arrays para não gerar Exception in thread “main” java.lang.NullPointerEx.
Eu conheço o significado do erro, que indica que o objto está apontando para null. Por isso vc mostrar um exemplo simples para ver se alguém pode me auxiliar:
- Criei 3 classes (Empresa, Funcionario e Empresa Teste)
- Classe Funcionario (determinei apenas alguns atributos)
public class Funcionario {
String nome;//nome do funcionário
int rg;//nº do rg do funcionário
}
- Classe Empresa(Apresenta alguns atributos. Um deles é o atributo da classe Funcionario)
public class Empresa {
public static int contador=0;
String nomeDaEmpresa=“IaC”;
int cnpj;//nº do cnpj da empresa
Funcionario [] func=new Funcionario[10];
void adicionaFuncionario(){
this.func[contador].nome=“Fernando”;
this.func[contador].rg=1234;
}//fim do método adicionaFuncionario()
}//fim da classe empresa
- Classe EmpresaTeste (serve para testar o aplicativo)
public class EmpresaTeste {
public static void main(String args[]){
Empresa empresa=new Empresa();
System.out.println("Adicione um funcionário");
empresa.adicionaFuncionario();
}//fim do método main()
}//fim a classe EmpresaTeste
- Quando eu executo a classe EmpresaTeste ocorre o seguinte erro:
init:
deps-jar:
compile-single:
run-single:
Adicione um funcionário
Exception in thread “main” java.lang.NullPointerException
at Empresa.adicionaFuncionario(Empresa.java:23)
at EmpresaTeste.main(EmpresaTeste.java:19)
Java Result: 1
BUILD SUCCESSFUL (total time: 0 seconds)
- Eu sei que o erro é apresentado na seguinte parte da classe Empresa:
this.func[contador].nome=“Fernando”;
Gostaria de saber o que devo fazer para não ocorrer mais esse erro?
Obrigado pela Atenção
César