Java 8 lambda和匿名内部类之间的性能差异

在Java 8之前,可以通过使用匿名内部类来实现lambda功能。例如:

interface Lambda {

void doStuff();

}

// ...

public void doWithCallback(Lambda callback) {

// ...

callback.doStuff();

}

// ...

doWithCallback(new Lambda {

public void doStuff() {

// ...

}

});

在性能方面,仍然使用这种方法和使用新的Java 8 lambda之间有区别吗?

回答:

甲骨文发布了一项研究,比较了Lambda和匿名类之间的性能

请参见Sergey Kuksenko撰写的JDK

8:Lambda性能研究,该幻灯片长74张。

简介:预热缓慢,但是当JIT内联时,最坏的情况与匿名类一样快,但可以更快。

以上是 Java 8 lambda和匿名内部类之间的性能差异 的全部内容, 来源链接: utcz.com/qa/421463.html

回到顶部