JIT编译器和匿名内部类

msp*_*ant 5 java compiler-construction optimization

当我们使用框架或库时,匿名类的回调函数是一种常见的方法,因此了解JIT是否执行此类优化非常有用.

我想知道JIT编译器是否足够智能,以了解它们每次执行一些代码并编译成本机?

Fra*_*eau 5

与任何其他代码一样,一旦执行了足够多的次数(默认情况下,Hotspot 服务器虚拟机为 10000 次,客户端虚拟机为 1500 次),JIT 编译器就会对它进行编译和优化,因此 JIT 有足够的数据作为基础它的优化。

仅仅因为它是匿名的并不意味着它受到任何不同的对待:它仍然是一个类,具有在编译期间生成的名称(MyClass$1)。