Herdar um classe ou implementar uma interface em tempo de execução
2 respostas
paulofafism
Pessoal estou precisando fazer o seguinte. Como eu posso fazer para implementar ou herdar um classe em tempo de execução?
Por exemplo, eu tenho uma classe chamada pessoa.
publicclassPessoa{publicPessoa(){}}
E também uma interface, por exemplo
publicinterfaceHumano{}
Como faço em tempo de execução a classe Pessoa implementar a interface Humano. Alguém tem alguma ideia, se posso usar algum framework ou utilizar a propria API Java para isso?
Você quer resolver aquele problema do personagem em jogos, que inicia como criança, e vai ganhando habilidades durante o jogo (por exemplo, torna-se adulto, então guerreiro ou mago, etc.).
Em Java você não pode mudar dinamicamente a classe de um objeto em tempo de execução, mas pode criar um atributo contendo uma lista de Habilidades (no caso do exemplo do personagem).
paulofafism
entanglement:
Você quer resolver aquele problema do personagem em jogos, que inicia como criança, e vai ganhando habilidades durante o jogo (por exemplo, torna-se adulto, então guerreiro ou mago, etc.).
Em Java você não pode mudar dinamicamente a classe de um objeto em tempo de execução, mas pode criar um atributo contendo uma lista de Habilidades (no caso do exemplo do personagem).
Não é isso que eu quero fazer, mas consegui resolver o meu problema com o framework Javassist.