Java 中的动态函数创建

2024-03-31

所以我想弄清楚是否有一些方法可以动态创建/分配一个方法到Java中的类。如果是C语言,我会使用指针如下所示:

public class Foo {  

  void bar(void *ptr) {....}  

};  

int main() {  
  Foo f = new Foo();  
  f.bar({"my function" ...})  
}  

然而,Java 当然没有指针,那么有什么方法可以从 Java 应用程序中获得类似的功能呢?


在 Java 中,您通常会声明一个带有要调用的方法的接口。例如,如果您的函数只是想执行一些代码,您可以声明一个 Runnable 并实现其 run 方法。

public class Foo {
    void bar(Runnable function) {
       for(int i = 0; i < 5; i++) {
           function.run();
       }
    }

    static void myFunction() {
         System.out.println("my Function!");
    }

    public static void main(String[] ignored) {
         Foo f = new Foo();
         f.bar( new Runnable() { public void run() {
             myFunction();
         }});
    }

}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Java 中的动态函数创建 的相关文章

随机推荐