什么是Java中函数指针的最接近替代品?

什么是Java中函数指针的最接近替代品?,第1张

什么是Java中函数指针的最接近替代品?

匿名内部阶级

假设你要传入的函数

String
返回一个参数
int

首先,如果你不能重用现有的接口,则必须定义一个以该函数作为其唯一成员的接口。

interface StringFunction {    int func(String param);}

使用指针的方法将只接受

StringFunction
实例,如下所示:

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);


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5431986.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-11
下一篇 2022-12-11

发表评论

登录后才能评论

评论列表(0条)

保存