Java和c指针

“在C和C++中,可以通过一个函数指针执行任意函数。从表面上看,java没有提供方法指针,也就是说,Java没有提供途径将一个方法的存储地址传给另外一个方法,以便第二个方法调用。”
这段话是我在java核心技术里面看到的,我不是很理解,有没有大佬详解一下,什么叫地址传给另外一个方法调用

阅读 1.5k
1 个回答

类似 JS 和 Go 里的回调函数、C# 里的委托。

以 JS 为例:

function foo(callback) {
    let result = {};
    callback(result);
}

function bar(res) {
    console.log(res);
}

foo(bar);

这里 bar 是个函数(函数指针),但它可以作为参数传给另一个函数 foo

Java 中没有语法层面上支持把函数当参数传递,想实现类似效果只能用反射。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题