《深入理解Java虚拟机—JVM高级特性与实践 周志明 著》之第1章 走近Java

1、Java的技术体系主要由支撑Java程序运行的虚拟机、提供各开发领域接口支持的Java API、Java编程语言及许多第三方Java框架(如spring、Struts等)构成。

2、Java的优点:

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

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

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

         4. 有一套完善的应用程序接口和第三方开源库的支持;

3、Java技术体系包括以下几个组成部分:

         1. Java程序设计语言;

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

         3. Class文件格式;

         4. Java API类库;

4、可以把Java程序设计语言、Java虚拟机、JavaAPI类库这三部分统称为JDK,JDK是用于支持Java程序开发的最小环境。

5、可以把Java API类库中的JavaSE API子集和Java虚拟机这两部分统称为JRE,JRE是支持Java程序运行的标准环境。

6、Java技术体系可以分为4个平台:

         1. Java Card:支持Java小程序运行在小内存设备上的智能卡;

         2. Java ME:支持Java程序运行在移动终端上的平台,最终被Android取代;

         3. Java SE:支持面向桌面级应用的Java平台,提供了完整的Java核心API;

         4. Java EE:支持使用多层架构的企业级应用的Java平台;

7、JDK相关版本的新特性:

         1. JDK1.5新特性:自动装箱、自动拆箱、泛型、动态注解、枚举、可变参数、增强遍历循环;

         2. JDK1.6新特性:提供动态语言支持、提供编译API和微型HTTP服务器API;

         3. JDK1.7新特性:提供新的G1收集器、加强对非Java语言的调用支持、升级类加载器架构;

         4. JDK1.8新特性:Lambda表达式、Jigsaw和JDK1.7中未实现的一部分Coin;

8、Java虚拟机的发展:

         1. Sun Classic VM:世界上第一款商用Java虚拟机,只能使用纯解释器方式来执行Java代码;

         2. Sun HotSpot VM:目前使用范围最广的Java虚拟机,热点代码探测技术;

         3. BEA JRockit VM:世界上速度最快的Java虚拟机,全部代码靠即使编译器编译后执行;

         4. Google Dalvik VM:Android平台的核心组成部分;

9、Java技术的未来:

         1. 模块化:解决应用系统与技术平台越来越复杂、越来越庞大问题的一个重要途径;

         2. 混合语言:Java虚拟机支持多语言开发;

         3. 多核并行:JDK1.5引入java.util.concurrent包实现了一个粗粒度的并发框架;

猜你喜欢

转载自blog.csdn.net/m0_37233688/article/details/83896932