У меня есть класс, который имеет метод, который вызывает все остальные методы в одном классе.Вызов всех методов в классе
Один из способов сделать это с помощью рамки отражения, есть ли другие способы?
[править] Примером код добавлен:
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
public class AClass {
private void aMethod(){
}
private void bMethod(){
}
private void cMethod(){
}
private void dMethod(){
}
//50 more methods.
//method call the rest
public void callAll() throws IllegalArgumentException, IllegalAccessException, InvocationTargetException{
Method[] methods = this.getClass().getMethods();
for (Method m : methods) {
if (m.getName().endsWith("Method")) {
//do stuff..
}
}
}
}
Я на самом деле не имеет проблем с вызовом все 4 методов из callAll(), т.е. избегать использования отражения. Но один из моих коллег отметил, что, если есть 50 методов, вы будете называть их один за другим? У меня нет ответа на это, поэтому я задаю этот вопрос здесь.
Спасибо, Сара
Зачем вам это нужно? – finnw
Не могли бы вы показать код? Потому что мне трудно понять, чего вы пытаетесь достичь. –
@finnw, я обновил свой вопрос.На самом деле я пытаюсь доказать свою точку зрения «Зачем вам это делать» коллеге, поэтому я задаю здесь вопрос. – sarahTheButterFly