Código compila sem erros mas quando abre o programa ...Exception in thread "main" java.lang.NullPoin

1. Código compila sem erros mas quando abre o programa ...Exception in thread "main" java.lang.NullPoin

Justino
Justino_Sousa

(usa CentOS)

Enviado em 10/11/2016 - 11:47h

Bom dia prezados, estou começando os estudos com JAVA, e fazendo alguns exercícios aqui, estou cadastrando alguns funcionários em um array e depois pondo pra listar, bom quado compilo o código não aparece erros, mas quando rodo o programa ai aparece Exception in thread "main" java.lang.NullPointerException,
to aqui tentando entender o que fiz de errado. segue o código.



class Funcionario{
Data dataDeEntrada = new Data();
String nome;
String departamento;
double salario;
double novoSalario = salario;
String dtbanco;
double aumento;
String rg;

public void recebeAumento(double valor){
this.aumento = valor;
this.novoSalario = this.salario + valor;
}
public double ganhoAnual(){
double ganhoAnual = this.novoSalario * 12;
return ganhoAnual;
}

class Data{
int dia,mes,ano;
String dataString;
public String formatadata(){
this.dataString = Integer.toString(dia)+"/"+Integer.toString(mes)+"/"+Integer.toString(ano);
return dataString;
}
} // **************** and class Data ****************\\

class Empresa{
String nome, cnpj;
Funcionario[] empregados;
public void adciona(Funcionario f){
for (int i = 0 ; i < this.empregados.length; i++ ) {
if (this.empregados[i] == null){
this.empregados[i] = f;
System.out.println(this.empregados[1].nome);
break;
}
}
}

public void mostraEmpregados(){
//for (int i = 0;i < this.empregados.length ;i++ ) {
System.out.println("nome: "+this.empregados[1].nome);
System.out.println("departamento: "+this.empregados[1].departamento);
System.out.println("salario: "+this.empregados[1].salario);
System.out.println("**************************************");
//System.out.println(i);i++;
//}
}
} // **************** and class Empresa ****************\\

class TestaFuncionario{
public static void main(String[] args) {
Empresa empresa = new Empresa();
empresa.empregados = new Funcionario[4];
for (int i=0;i<4; i++ ) {
Funcionario f1 = new Funcionario();
f1.nome = "Justino Sousa";
f1.departamento ="Tecnologia da Informacao";
f1.salario = i *2000;
empresa.adciona(f1);
//empresa.mostraEmpregados();
}
}
}





  






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts