Não sei se alguém já precisou disso, mas eu gostaria de saber se alguém sabe como posso “promover” um objeto de uma classe para outra classe que herde essa primeira classe.
Algo assim, vamos ao típico exemplo de PF/PJ e Pessoa.
PF e PJ herdam Pessoa, se eu tenho um objeto pessoa da classe Pessoa, como eu posso dizer “a partir de agora, você é PF” sem ter que instanciar outro objeto e copiar as propriedades?
Promover sim, através de coerção, claro que ambos os objetos precisam estar na mesma árvore de herança. Além disso, existe o padrão Adapter do (Design Pattern) Padrões de Projetos. Cuidado, seja claro no seu projeto para que ele não perca a coesão. Como Java é uma linguagem tipificada, é meio “anti-natural” para essa linguagem mudanças de tipos, a menos que vc use polimorfismo.