JVM学习(一)——JAVA与JVM
来源:互联网 发布:淘宝u站管理中心 编辑:程序博客网 时间:2024/06/05 17:09
JVM学习(一)——JAVA与JVM
关于JVM的学习,一直拖拖拉拉,拖了好久,连一些基本的理念都不清楚,身为一个JAVA开发这真的很不应该。从今天开始起,会坚持更新JVM相关的笔记、博客,以《深入理解Java虚拟机》学习,向作者致敬。
JAVA
总所周知,Java是当下非常火爆的一门语言,JAVA开发的程序员在我国可谓是一抓一大片,诚然门槛儿比较低,但是java能够获得如此广泛的认可,它有着许多不可忽视的优点。
- 它摆脱了硬件平台的束缚,实现了“一次编写,到处运行”的理想
- 它提供了一个相对安全的内存管理和访问机制,避免了绝大部分的内存泄露和指针越界问题
- 它实现了热点代码检测和运行时编译优化,这使得java应用能随着运行时间的增加而获得更高的性能
- 它,拥有无数优秀的开源项目,大名鼎鼎的spring
java在今天之所以会被如此广泛的应用,个人认为有以下几个主要原因
- 门槛低,算是面向对象编程语言中较为简单的
- 稳固的生态体系,优秀的框架,出色的设计,spring为代表等节约了企业大量的开发成本
- 得益于JVM的默默付出
于是今天,我们就来谈谈JVM,java的核心,java的生命。
走进JVM
从广义上来看,clojure、jruby、groovy、Scala都属于JVM上的语言,可以说是java技术体系中的一员。我们可以把java程序设计语言、jvm、java api类库这三部分统称为JDK(Java Development Kit)。另外,也可以把Java API类库中的Java SE API 子集和jvm这两部分统称为JRE (Java Runtime Environment)
JVM的发展
1.Sun Classic/Exact VM
Sun Classic:世界第一款商用Java虚拟机
Exact VM:准确式GC:虚拟机可以知道内存中的某个位置的数据具体是什么类型。
2.Sun Hotspot VM
1. 目前使用最广泛的JVM
2.热点代码探测技术:通过执行计数器找出最具编译价值的代码。
也是OpenJDK 和SunJDK 所带的虚拟机
3.移动端虚拟机
KVM,CDC/CLDC Hotspot Implenmentation,Squawk VM,JavaInJava,Maxine VM
4.BEA JRockit/IBM J9VM
JRockit:号称世界上最快的Java 虚拟机。它不太关注程序启动速度,内部不包含解析器的实现。其垃圾收集器和missionControl服务套件等部分,在jvm之中处于领先的水准
5.Azul VM/BEA LiquidVM
6.Apache Harmony/Google Android Dalvik VM
dvm是Android中的虚拟机,我也曾写博客做对比过,但是貌似最近随着谷歌换了官方支持语言,一切会有些许改变
目前最流行的Java 虚拟机:
1.HotSpot VM (融合了Jrockit)
2.J9 VM
3.Zing VM
有兴趣的朋友可以去每个了解一下,篇幅太多,这里也不再赘述
- JVM学习(一)——JAVA与JVM
- 【Java】深入理解JVM学习笔记(一) —— JVM数据区域
- JVM学习笔记(一)——JAVA内存区域
- JVM学习(一)——java技术体系
- JVM学习笔记(一)——Java内存模型
- jvm学习笔记(一)—Java虚拟机内存区域
- Java基础学习总结(119)——Java8 JVM与Java7 JVM比较
- JVM(一)— 什么是JVM
- JVM学习(一)
- JVM学习(一)
- JVM学习(一)
- JVM学习笔记(一)—基本结构
- JVM那些事儿(一)——jvm内存介绍
- 浅谈JVM(一)——JVM内存模型
- JVM(一)—Java内存模型
- JVM(一)——JVM体系结构
- JVM学习笔记(一)——eclipse优化
- 菜鸟学习JVM(一)——垃圾回收算法
- 关于土地革命、土地改革、三民主义两阶段民生等五个阶段中土地问题的总结
- 归并排序java实现
- 制作jdk基础镜像
- Android进阶:基于okhttp 3 的 Android 网络层架构设计
- spring boot之web开发(二)
- JVM学习(一)——JAVA与JVM
- MAC下创建快捷方式
- 常用u-boot命令详解(全)
- linux -- Ubuntu修改静态IP地址重启后无法上网的解决
- 用 bat 批处理命令启动 Android Studio 自带模拟器
- [jQuery Validate]前端校验
- ubuntu 16.04 LTS
- 【CSS】浅谈css中格式化上下文BFC、IFC(一)
- 日期问题