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包实现了一个粗粒度的并发框架;