编程语言
首页 > 编程语言> > Java中的动态函数创建

Java中的动态函数创建

作者:互联网

所以我试图弄清楚是否有一些方法可以动态创建/为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();
         }});
    }

}

标签:java,methods,java-6
来源: https://codeday.me/bug/20190614/1237788.html