天天看点

Java核心技术卷I基础知识1.2.9 高性能

<b>1.2.9 高性能</b>

尽管对解释后的字节码性能已经比较满意,但在有些场合下还需要更加高效的性能。字节码可以(在运行时

刻)动态地翻译成对应运行这个应用的特定cpu的机器码。

使用java的头几年,许多用户不同意这样的看法:性能就是“适用性更强”。然而,现在的即时编译器已经

非常出色,以至于成了传统编译器的竞争对手。在某些情况下,甚至超越了传统编译器,原因是它们含有更

多的可用信息。例如,即时编译器可以监控经常执行哪些代码并优化这些代码以提高速度。更为复杂的优化

是消除函数调用(即“内联”)。即时编译器知道哪些类已经加载。基于当前加载的类集,如果特定的函数

不会被覆盖,就可以使用内联。必要时,还可以撤销优化。