O programa compila perfeito. Entretanto o valor de resultado permanece zerado. Usei dentro da própria classe a seguinte expressão: resultado = pontos-advertencias;
class Empresa{
String CNPJ;
String nome;
Funcionario[] funcionario;
void analisaDados(){
System.out.println("Nome da empresa: "+this.nome);
System.out.println("CNPJ: "+ this.CNPJ);
for(int i=0;i<funcionario.length;i++){
if(funcionario[i]==null) continue;
System.out.println("Nome: "+funcionario[i].nomeF+ "\n Pontos: " +funcionario[i].pontos+"\nAdvertências: "+ funcionario[i].advertencias);
System.out.println("Resuldado: "+funcionario[i].resultado);
}
}
}
class Funcionario{
String nomeF;
int pontos;
int advertencias;
int resultado = this.pontos-this.advertencias;
}
class Arrays{
public static void main(String[] args){
Empresa escolaDH = new Empresa();
escolaDH.nome = "\t\t\tEscola de heróis.\n \t\tUma escola de ética para crianças usando quadrinhos e desenhos animados \n\t\t O que é ser um herói para você?";
escolaDH.CNPJ = "616354";
escolaDH.funcionario = new Funcionario[5];
escolaDH.funcionario[0] = new Funcionario();
escolaDH.funcionario[0].nomeF = "Marcelo";
escolaDH.funcionario[0].pontos = 50;
escolaDH.funcionario[0].advertencias = 20;
escolaDH.funcionario[2] = new Funcionario();
escolaDH.funcionario[2].nomeF = "Samanta";
escolaDH.funcionario[2].pontos = 30;
escolaDH.funcionario[2].advertencias = 20;
escolaDH.funcionario[4] = new Funcionario();
escolaDH.funcionario[4].nomeF = "David";
escolaDH.funcionario[4].pontos = 80;
escolaDH.funcionario[4].advertencias = 47;
escolaDH.analisaDados();
}
}