Java - criando uma subclasse dinamicamente
Eu gostaria de criar uma subclasse programaticamente. Eu acho que tenho poucas opções - Javassist, CGLib, BCEL ou ASM.
O caso de uso é que os internos de um aplicativo são orientados por classe e as extensões são baseadas em classe. Portanto, não posso ter uma única classe como base para várias extensões orientadas por scripts externalizados.
Agora - como eu faria isso? Eu encontrei exemplos com interceptar chamadas de método, acesso de campo, inicialização etc. Mas nada sobre subclassificação.
Eu gostaria de terminar com uma aula que:
tem um nome que eu quero.é uma subclasse (direta, na melhor das hipóteses) de uma dada classecopia o (s) construtor (es) da classe pai (ou chamasuper(...)
)Eventualmente, gostaria de dar algumas anotações.Eu sei que é possível porque várias integrações de linguagens dinâmicas, comoGroovyClassLoader
pode fazer isso.