初识 JVM
2024-08-22 09:23:23
发展历史
- 1996年,SUN JDK 1.0 Classic VM 发布,纯解释运行,使用外挂进行JIT
- 1997年 JDK1.1 发布。包含了:AWT、内部类、JDBC、RMI、反射
- 1998年 JDK1.2 Solaris Exact VM:JIT 解释器混合,Accurate Memory Management 精确内存管理,数据类型敏感,提升的GC性能。JDK1.2开始 称为Java 2,J2SE J2EE J2ME 的出现,加入Swing Collections
- 2000年 JDK 1.3 Hotspot 作为默认虚拟机发布,加入JavaSound
- 2002年 JDK 1.4 Classic VM退出历史舞台,加入了:Assert 正则表达式 NIO IPV6 日志API 加密类库
- 2004年发布 JDK1.5 即 JDK5 、J2SE 5 、Java 5。加入了:泛型、注解、装箱、枚举、可变长的参数、Foreach循环
- JDK1.6 JDK6。加入了:脚本语言支持、JDBC 4.0、Java编译器 API
- 2011年 JDK7发布,延误项目推出到JDK8。加入了:G1、动态语言增强、64位系统中的压缩指针、NIO 2.0
- 2014年 JDK8发布,Lambda表达式、语法增强 、Java类型注解
- 2017年JDK9,加入了:模块化
大事件
- 使用最为广泛的JVM为HotSpot
- HotSpot 为Longview Technologies开发,被SUN收购
- 2006年,Java开源,并建立OpenJDK
- HotSpot,成为Sun JDK和OpenJDK中所带的虚拟机
- 2008 年,Oracle收购BEA,得到JRockit VM
- 2010年Oracle 收购 Sun,得到Hotspot
- Oracle宣布在JDK8时整合JRockit和Hotspot,优势互补。在Hotspot基础上,移植JRockit优秀特性
规范
- Java语言规范:语法、变量、类型、文法
- JVM规范:Class文件类型、运行时数据、帧栈、虚拟机的启动、虚拟机的指令集
最新文章
- STL容器分类
- servlet中用注解的方式读取web.xml中的配置信息
- Excel-漏斗图分析(差异分析)
- 有关try..catch..finally处理异常的总结
- Toast通知
- CSS雪碧,即CSS Sprite 简单的例子
- 无需cygwin,使用NDK进行开发
- Python 中对文件的输入输出
- 用C#编写游戏脚本
- 关于HTTP协议的学习
- js原生bind()用法[注意不是jquery里面的bind()]
- Swift - 使用set,get确保索引加减在正常的范围内
- DDD分层架构之值对象(介绍篇)
- 【设计模式+原型理解】第一章:使用Javascript来巧妙实现经典的设计模式
- 生成Csv格式的字符串
- 《css网站布局实录》(李超)——读书札记
- java编程规范(持续更新)
- 10 个 Linux 中方便的 Bash 别名
- apache环境配置 | httpd Could not reliably determine the server's fully qualified domain name
- 分辨率,PPi,DPI,DPR,物理像素,逻辑像素