《深入理解Java虚拟机》第一章
LanyuanXiaoyao's Blog ヽ(✿゚▽゚)ノ

《深入理解Java虚拟机》第一章

2017-11-05

概述

Java不仅是一门变成语言,还是一个由一系列计算机软件和规范形成的技术体系,这个技术体系提供了完整的用语软件开发和跨平台部署的支持环境,并广泛用于嵌入式系统、移动终端、企业服务器、大型机等多种场合,所以我们现在说Java,绝对不仅仅是在说一种变成语言,这个整个体系也是我们学习Java变成的动机所在。
Java优点

  1. 实现跨平台
  2. 提供相对安全的内存管理和访问机制
  3. 实现了热点代码检测和运行时编译和优化
  4. 提供了完善的应用接口还有无数商业机构和开源社区的第三方库

Java技术体系

Java技术体系包括以下部分

  • Java程序设计语言
  • 各种硬件平台上的Java虚拟机
  • Class文件格式
  • Java API类库
  • 来自商业机构和开源社区的第三方Java类库

其中Java程序设计语言、Java虚拟机、Java API类库三部分统称为JDK(Java Development Kit),JDK是用于支持Java程序开发的最小环境,Java API类库的Java SE API子集和Java虚拟机两部分统称为JRE(Java Runtime Environment),JRE是支持Java程序运行的标准环境

按照Java技术的应用领域和关注重点来划分

  • Java Card
    支持Java小程序(Applets)运行在小内存设备上
  • Java ME(Micro Edition)
    支持Java程序运行在移动平台上(非Android,比如功能机,NOKIA等)
  • Java SE(Standard Edition)
    支持面向桌面级应用的Java平台
  • Java EE(Enterprise Edition)
    支持使用多层架构的企业应用的Java平台

Java发展史

Java虚拟机发展史

Sun Classic Exact VM

世界上第一款商用Java虚拟机,它只能使用纯解释器方式来执行Java代码,由于使用JIT编译器需要外挂,且解释器和编译器不能配合工作,导致编译器不得不对每一行代码都进行编译,导致执行效率非常低,这也打响了“Java很慢”这个印象的开端

Sun Hotspot VM

世界上用得最广的Java虚拟机,支持热点代码探测功能,可以通过执行计数器找到最具有编译价值的代码,然后通知JIT编译器进行编译,大大加快了Java代码的执行效率


相似文章

评论