深入理解JVM之走进Java

来源:互联网 发布:海洋cms一点不好用 编辑:程序博客网 时间:2024/05/19 02:21

        今天读了JVM的第一章,这一章从总体来说是介绍Java技术体系的过去、现在以及未来的一些发展趋势,并通过实战介绍了如何通过自己来独立编译一个OpenJDK7。

一:概述

         首先介绍了Java语言的优点,除了它是一门结构严谨、面向对象的编程语言之外它还有如下优点

        1)Java语言摆脱了硬件平台的束缚,实现了一次编写到处运行即跨平台;

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

        3) 实现了热点代码检测和运行时编译及优化,这使得Java应用能随着运行的增加而获得更高的性能;

        4)有着一套完整的应用程序接口,还有无数来自商业机构和开源第三方的类库来帮助它实现各种各样的功能。

二:Java技术体系

         Java的技术体系包括5个部分:

        1)Java程序设计语言;

        2)各种硬件平台上的Java虚拟机;

        3)Class文件格式;

        4)Java API类库;

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

        把Java语言、Java虚拟机、Java API类库统称为JDKJava SE API子集Java虚拟机两部分称为JRE。

        Java技术体系分为4个平台

       1)Java Card:支持一些Java小程序运行在小内存设备(如智能卡)上的平台;

       2)Java ME:支持Java程序运行在移动终端(手机、PDA)上的平台,对Java API有所精简,并加入了针对移动终端的支持,这个版本以前称为J2ME;

       3)Java SE:支持桌面级应用的Java平台,提供了完整的Java核心API,这个版本以前称为J2SE;

       4)Java EE:支持使用多层架构的企业应用的Java平台,除了提供Java SE API外,还对其做了大量的扩充并提供了相关的部署支持,这个版本以前称为J2EE。

三:Java发展史

       介绍了Java语言的发展史,知道了Java的前身叫Oak,为当时的电子产品而产生的语言,可是1995年随着互联网兴起,Oak迅速找到定位,并改名为Java语言。并按照时间的顺序说了Java在每个时间段所发生的事情,以及在每个时间点Java语言新增加的特性以及语法等等与Java有关的事情,个人觉得没必要记,有兴趣可以查阅资料进行了解。


四:Java虚拟机发展史

        然后又介绍了让Java成为跨平台语言的最大的功臣的Java虚拟机。介绍了有关的虚拟机:Sun Classic/Exact VM、Sun HotSpot VM、Sun Mobile-Embedded VM/Meta-Circular VM、BEA JRockit/IBM J9 VM、Azul VM/BEA Liquid VM、Apache Harmony/Google Android Dalvik VM、Microsoft JVM等等。

五:展望Java技术的未来

       其次展望了Java技术的未来要向模块化、混合语言、多核并行、进一步丰富语法、64位虚拟机等等方向展望了一下Java语言的发展方向。

       最后以下载并进行实战自己编译JDK结束了第一章。