Я хочу, чтобы инициализировать массив методов ява в дочернем классе, как поле класса как такПолучение метода Java без использования getDeclaredMethod
void callme() {System.out.println("hi!");}
Method[] actions = new Method[] {&callme,&callme};
и назвать все методы в этом массиве в родительском классе как так:
for (meth:actions) {meth.invoke();}
Однако в настоящее время я не могу найти способ, чтобы неявно инициализирует массив действия, а не через конструктор. Ниже дает мне ошибку из-за необработанного исключения:
Method[] actions = new Method[] {
this.getClass().getDeclaredMethod("count")
};
Как уже говорилось, я не могу поймать исключение при инициализации этого массива в явном виде в поле, а не в конструкторе.
Я новичок в отражении java, так что это, вероятно, очевидный вопрос, но я не нашел ответа на это в google, любая помощь будет оценена.
P.S.
Как полагает Скотт ниже, я хочу, чтобы суперкласс вызывал определенный набор методов, определенных в подклассе.
Что на Земле вы пытаетесь сделать ? –
Как полагает Скотт ниже, я пытаюсь «Если вы хотите, чтобы суперкласс вызывал определенный набор методов, определенных в подклассе» –