假设我有一些这样的方法:
method1()
method2()
method3()
method4()
method5()
但我不想调用序列方法:
obj.method1()
obj.method2()
obj.method3()
obj.method4()
obj.method5()
这很无聊。如果我添加一个新方法:method6(),我需要添加手册:obj.method6()
如果我可以使用 Java 中的循环调用它们会更好。有人可以给我一些建议吗?
谢谢!
.
尝试类似:
for (int i=0;i<N;i++) {
try {
obj.getClass().getMethod("method"+i).invoke(obj);
} catch (Exception e) {
// give up
break;
}
}
public static void callABunchOfMethods(Object obj, int count) throws Exception {
for (int i = 1; i <= count; i++)
obj.getClass().getMethod("method"+i).invoke(obj);
}
我不知道你为什么对你的方法使用这样的命名惯例。如果不仅仅是例如,您应该考虑为他们找到更好的解决方案。今天这对你来说可能是显而易见的,但对于你的代码的追随者来说却不是。
关于手动添加假设的method6. 我认为添加一行代码总比减少它并失去代码的清晰度要好。
我的建议是,你应该使用Facade 模式