箭头操作符如何在java 8中内部工作?

我知道箭头的左侧有参数,箭头的右侧是参数所在的函数。 但是,我想知道java 8如何映射左侧和右侧并转换为函数。 那里发生了什么,我在哪里可以找到这些信息?

当你有一个-> ,javac编译器会添加一个带有代码内容的静态方法。 它还向类添加动态调用方信息,以便JVM可以将lambda实现的接口映射到参数和返回类型。 JVM在运行时生成代码以将接口绑定到生成的方法。

与lambdas和匿名类的区别在于,隐含变量只需要有效地最终(因为本来可以是最终的)并且复制成员变量,即它不保留对外部类的引用。

它可以告诉RunnableCallable之间的区别,即使两者都没有参数。 有关详细信息,请访问http://vanillajava.blogspot.com/2014/09/lambdas-and-side-effects.html