Segui a etapa Explicação para resolver o exercício, porem ocorre uma exception NullPointerException. Pude verificar que é devido a falha na inicialização do estado. O programa teste não está aceitando o construtor:
public Orcamento() {
this.estadoAtual = new EmAprovacao();
}
Agora se eu faço como foi demonstrado no vídeo:
public Orcamento(double valor) {
this.valor = valor;
this.itens = new ArrayList<Item>();
this.estadoAtual = new EmAprovacao();
}
o programa funciona. Podem me explicar onde está o erro?