olá, pessoal!
Gostaria que vocês me ajudassem com essa dúvida:
Tendo uma classe Pessoa da seguinte forma:
class Pessoa{
String nome;
int idade;
Profissao profissao;
}
Sendo profissao um atributo do tipo Profissao que é uma outra classe:
class Profissao{
int codigo;
String nomeDaProfissao;
}
Acabei de aprender que se eu realizar o comando no meu método main():
referenciaObjetoPessoa.profissao.nomeDaProfissao = "Programador";
System.out.println(referenciaObjetoPessoa.profissao.nomeDaProfissao);
O programa vai acusar um erro, dizendo que o atributo não foi populado, que não há referência atribuída a aquele atributo.
A dúvida agora é:
Por que isso é possível com um atributo do tipo String, sabendo que String é uma classe?