Java8中的lambda 表达式(二)

2014-11-24 08:27:02 · 作者: · 浏览: 1
xtends Queue { void deleteAll(); }

这个将强制所有实现了 FastQueue 的类必须实现 deleteAll() 方法。

HotSpot 实现

lambda 不只是可以减少很多代码的编写,其字节码和运行时的实现也比 Java 7 中的匿名类的效率更高。针对每一个 lambda 表达式,编译器都会创建一个对应的形如 lambda$1() 这样的方法。这个过程被称之为 lambda body desugaring. 当遇见一个 lambda 表达式,编译器将会发起一个invokedynamic 调用,并从目标功能接口中获取返回值。

作者:红薯