Java虚拟机学习

世界上并无完美的程序,但咱们并不所以而沮丧,由于写程序原本就是一个不断追求完美的过程。java

Java的优势:安全

(1)依次编写,多处运行服务器

(2)提供了相对安全的内存管理和访问机制,避免了绝大部分的内存泄露和指针越界问题并发

(3)实现了热点代码检测和运行时编译及优化,这使得Java应用能随着运行时间的增长得到更高的性能框架

(4)有一套完善的应用程序接口,还有无数来自商业机构和开源社区的第三方类库来帮助它实现各类各样的功能模块化

Java技术体系:性能

(1)Java程序设计语言优化

(2)各类硬件平台上的Java虚拟机ui

(3)Class文件格式spa

(4)Java API类库

(5)来自商业机构和开源社区的第三方Java类库

Java虚拟机发展:

(1)Sun Classic VM:第一款商用Java虚拟机,只能使用纯解释器方式来执行Java代码,外挂JIT编译器后,JIT将彻底接管虚拟机的执行系统,解释器便不会再工做了

(2)Exact VM:JDK1.2时,曾在Solaris平台上发不过一款名为Exact VM的虚拟机

(3)HotSpot VM:在JDK1.2是,Classic VM与HotSpot VM并存,可是默认使用Classic VM,而在JDK1.3时,HotSpot VM是默认虚拟机,Classic VM备用,直到JDK1.4 Classic VM才彻底退出商用虚拟机的历史舞台,与Exact VM一块儿进入了Sun Labs Research VM中。

高性能Java虚拟机通常指Sun HotSpot、BEA JRockit、 IBM J9 VM,JRockit VM曾经号称“世界上速度最快的Java虚拟机”,是一款专门为服务器硬件和服务器端应用场景高度优化的袭击,因为专一于服务器端应用,它不太关注程序启动速度,所以JRockit内部不包含解析器的实现,所有代码都靠即时编译器表之后执行,同时JRockit的垃圾收集器和MissionControl服务套件等部分实现,都是领先地位;其实Azul VM和BEA Liquid VM这类特定硬件平台转悠的虚拟机才是“高性能”虚拟机。


展望Java技术的将来:

(1)模块化

将来的Java平台中,极可能会对模块化提出语法层面的支持

(2)混合语言

当单一的Java开发已经没法瞒住当前软件复杂需求时,愈来愈多基于Java虚拟机的语言开发被应用到软件项目中,如:Scala、Groovy、Clojure、JRuby/Rails

(3)多核并行

早在JDK1.5就已经引入java.util.concurrent包实现了一个粗粒度的并发框架,而在JDK1.7中加入了java.util.concurrent.forkjoin包是对这个框架的一次重要扩充。

(4)进一步丰富语法

java 5曾对Java语法进行了一次扩充,加入了自动装箱、泛型、动态注解、枚举、可变长参数、for-each遍历等

(5)64位虚拟机

相关文章
相关标签/搜索