比如把 method1 作为 method2 的参数. 可以吗? 如何弄?
必须要是abstract method吗?
谢谢
------解决方案--------------------
如果你的method2有返回值,并且和method1的参数类型一致,就可以method1(method2),这么写..
但是在定义方法的时候应该不能把method2作为参数,没有具体了解过!
------解决方案--------------------
我很好奇Method的定义。也很想知道怎样做的好处是什么。求解!谢谢
------解决方案--------------------
------解决方案--------------------
啊是委托呀.
------解决方案--------------------
Java没有函数指针,这东西很多时候很好用的。
------解决方案--------------------
用反射。
public class DemoInvoke {
public void sayHello() {
System.out.println("hello java!");
}
public void foo(String methodName) {
try {
getClass().getDeclaredMethod(methodName).invoke(this);
} catch (Exception e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
DemoInvoke di = new DemoInvoke();
di.foo("sayHello");
}
}
------解决方案--------------------
- Java code
public class DemoInvoke { public void sayHello() { System.out.println("hello java!"); } public void foo(String methodName) { try { getClass().getDeclaredMethod(methodName).invoke(this); } catch (Exception e) { e.printStackTrace(); } } public static void main(String[] args) { DemoInvoke di = new DemoInvoke(); di.foo("sayHello"); }}
------解决方案--------------------
把一个函数作为另一个函数的参数,这种功能称为闭包,目前的 JDK 还不支持这类语法,呵呵。