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

Dúvida no Ex. 4 da Aula 5 - Reduzindo acoplamento com polimorfismo

E como fica a classe TestaPagamentos?

O método

divida.getDocumentoCredor().setValor("00.000.001/001-01");

agora gera um NullPointerException.

2 respostas
solução!

Não temos mais uma instancia pronta referente ao documento quando instanciamos a classe Divida, por isso o NullPointerException, ou seja, você está tentando setar um valor de um atributo nulo.

A classe Divida possui um atributo do Tipo Documento juntamente com seu getter e setter e as classes que implementam Documento, possuem um construtor que obriga o recebimento de um valor.

Fica assim:

Divida:

private Documento documentoCredor;
// mais getter e setter desse atributo

Classe Teste:

divida.setDocumentoCredor(new Cnpj("00.000.000/0001-01"));

Valeu d+ Rafael!