深入理解Java虚拟机读书笔记
Java不仅仅是一门编程语言,它是一个技术体系。
一次编写,到处运行
Java技术体系主要由以下几部分组成:
- java程序设计语言
- 各种硬件平台上的java虚拟机
- Java API类库
- 来自商业机构和开源社区的第三方Java类库
一般情况下,一个程序员只要了解了必要的Java API、Java 语法,以及学习适当的第三方开发框架,就已经基本能满足开发的需要了。
体系图:
Java 与 C 的区别
Java走的是二进制跨平台路线,发布的是“跨平台”的二进制可执行文件(Java Class文件),然后依赖每个平台上实现的JVM来执行之;C走的是源码跨平台路线,发布的是“源码”,在每个平台上重新编译一遍就可以使用。两者的取舍有所不同。
来自 <https://www.zhihu.com/question/30674148>
C 偏底层,Java 应用更广,Java 虚拟机是使用 C 语言开发的。
java 虚拟机
Oracle 目前取得了三大商业虚拟机的其中两个:JRockit 和 HotSpot。
HotSpot 是 SunJDK和 OpenJDK中所带的虚拟机,也是目前使用范围最广的 Java虚拟机。
JRockit曾经号称“世界上速度最快的Java虚拟机”。