首页 > Java > java教程 > 在 Java 中模拟函数指针的最佳方法是什么?

在 Java 中模拟函数指针的最佳方法是什么?

Linda Hamilton
发布: 2024-12-02 19:57:10
原创
928 人浏览过

What's the Best Way to Simulate Function Pointers in Java?

Java 中函数指针的最近替代方案

Java 缺乏函数指针,这在创建执行类似任务但略有不同的方法时提出了挑战。为了解决这个问题,一个合适的替代方法是使用匿名内部类。

匿名内部类解决方案

匿名内部类允许您定义方法,而无需创建单独的命名方法班级。它遵循使用所需方法定义接口并在匿名内部类中实现它的模式。

例如,考虑一个采用字符串作为参数并返回整数的方法。首先,定义一个接口:

interface StringFunction {
    int func(String param);
}
登录后复制

接受指向此函数的指针的方法如下所示:

public void takingMethod(StringFunction sf) {
   int i = sf.func("my string");
   // do whatever ...
}
登录后复制

要调用此方法,请创建一个实现以下功能的匿名内部类接口:

ref.takingMethod(new StringFunction() {
    public int func(String param) {
        // body
    }
});
登录后复制

或者,Java 8 引入了 lambda 表达式,它为此提供了更简洁的语法目的:

ref.takingMethod(param -> bodyExpression);
登录后复制

以上是在 Java 中模拟函数指针的最佳方法是什么?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板