Boa tarde,
No código abaixo já instanciei a classe Fornecedor dentro do main de Produto e mesmo assim continua o erro abaixo, alguem pode me ajudar a consertar e explicar pq está errado assim por favor.
Exception in thread "main" java.lang.NullPointerException
at br.com.java.pacotesemodificadores.produtos.Produto.main(Produto.java:27)
obs: desconsiderei os modificadores uma vez que estao dentro do mesmo pacote e arquivo.
package br.com.java.pacotesemodificadores.produtos;
class Produto {
private String nome;
private Fornecedor fornecedor;
public double preco;
double imposto;
public static void main(String[] args) {
Fornecedor f = new Fornecedor(); // Inicialização de Fornecedor
Produto p = new Produto(); // Inicialização de Produto
/* Preenchimento de Fornecedor*/
f.cnpj = "234234123";
f.codigo = "3423423423";
/* Preenchimento de Fornecedor*/
p.nome = "Notebook";
p.preco = 1500;
p.imposto = 2.0;
p.fornecedor.codigo = f.codigo; // Linha do erro
p.fornecedor.cnpj = f.cnpj;
/* Imprimindo */
System.out.println("---------------");
System.out.println("Nome do produto: " + p.nome );
System.out.println("Preço: " + p.preco );
System.out.println("Imposto: " + p.imposto);
System.out.println("---------------");
System.out.println("Fornecedor codigo: " + p.fornecedor.codigo );
System.out.println("Fornecedor cnpj: " + p.fornecedor.cnpj);
System.out.println("---------------");
}
}
class Fornecedor {
String codigo;
private String nome;
public String cnpj;
public void setNome(String nome) {
this.nome = nome;
}
public String getNome() {
return nome;
}
}