Java - dynamiczne tworzenie podklasy

Chciałbym programowo utworzyć podklasę. Myślę, że mam kilka opcji - Javassist, CGLib, BCEL lub ASM.

Przypadek użycia jest taki, że elementy wewnętrzne jednej aplikacji są zorientowane na klasę, a rozszerzenia są oparte na klasie. Dlatego nie mogę mieć pojedynczej klasy jako bazy dla wielu rozszerzeń sterowanych zewnętrznymi skryptami.

Teraz - jak bym to zrobił? Znalazłem przykłady z przechwytywaniem wywołań metod, dostępu do pola, inicjalizacji itp. Ale nic o podklasowaniu.

Chciałbym skończyć z klasą, która:

ma imię, które chcę.jest (w najlepszym razie) podklasą danej klasykopiuje konstruktor (y) z klasy nadrzędnej (lub wywołańsuper(...))w końcu chciałbym dać mu kilka adnotacji.

Wiem, że to możliwe, ponieważ różne dynamiczne integracje języków, jakGroovyClassLoader, mogę to zrobić.

questionAnswers(3)

yourAnswerToTheQuestion