Viva. Fiquei com uma dúvida na compreensão deste exercício. Era para instanciar a Data e atribuí-la ao funcionário, ou era para instanciar (apenas) e depois chamar o método mostra?
É que após instanciar a Data e não atribuí-la ao funcionário, me parece que dá um NullPointerException. Ou seja, se apenas fizer:
(...)
Data date = new Data();
func.mostra();
(...)
Por outro lado, se a data for instanciada e depois atribuída ao funcionário (sem preencher os dados) aí sim, os valores são setados para 0 (zero). Ou seja,
(...)
Data date = new Data();
func.data = date;
func.mostra();
(...)
Era para fazer da primeira ou da segunda maneira?
Obrigado.