Разрабатываю интерпретатор на Java и для простоты расширения я использую некоторые отражения во время запуска, чтобы функции можно было вызывать только по их имени.
Пока у меня была следующая структура классов:
A extends B
B extends C
C extends D
И для доступа ко ВСЕМ методам, определенным в любом из тех классов, которые я использовал:
Method method = A.class.getMethod("theExpectedFunctionName");
Это работает.
Однако теперь, когда проект вырос, оказалось, что было бы гораздо удобнее иметь такую структуру классов, как:
B extends A
C extends A
D extends A
Но теперь функция getMethod, естественно, больше не работает так.
Есть ли способ, как я могу получить все методы, которые есть в дочерних классах A?
Огромное спасибо заранее!