Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Erro: Compilo e da certo quando vou rodar da erro.

Estou tentando fazer o exercício, quando compilo passa liso, porém quando vou rodar o programa aparece este erro:

Execption in Thread "main" java.lang.NullPointerException 
            at Programa6.main(Funcionario6.java:25)

Aqui está meu código:

class Funcionario6 {

    String nome;
    double salario;
    Data nascimento;

}

class Data    {

    int dia;
    int mes;
    int ano;

}

class Programa6 {

    public static void main(String[] args){

        Funcionario6 f1 = new Funcionario6();

            f1.nome = "Pablo";
            f1.salario = 5000;
            f1.nascimento.dia = 20;
            f1.nascimento.mes = 02;
            f1.nascimento.ano = 1988;

        System.out.println("O " + f1.nome + " ganha " + f1.salario + " e nasceu em: " + f1.nascimento.dia + "/" + f1.nascimento.mes + "/" + f1.nascimento.ano);

    }

}

Percebo que o erro está na linha 25 onde declaro o nome mas não consigo resolver.

2 respostas
solução!
class Programa6 {

    public static void main(String[] args){

            Funcionario6 f1 = new Funcionario6();

            f1.nascimento= new Data(); // inicializar data
            f1.nome = "Pablo";
            f1.salario = 5000;
            f1.nascimento.dia = 20;
            f1.nascimento.mes = 02;
            f1.nascimento.ano = 1988;

        System.out.println("O " + f1.nome + " ganha " + f1.salario + " e nasceu em: " + f1.nascimento.dia + "/" + f1.nascimento.mes + "/" + f1.nascimento.ano);

    }

}

Obrigado pela dica!

Eu vi que tinha esquecido de inicializar Data!