笔记:深入理解java虚拟机-1走进java

时间:2023-01-01 22:43:35

一.理清sdk,jdk,jre的概念

1.sdk。全称software development kit,软件开发工具包。一般是软件工程为特定的软件包、软件框架、硬件平台、操作系统等建立软件应用时的开发工具的集合。

2.jdk。全称 java development kit,java软件开发工具包。是开发java的工具集合。我们可以把java程序语言、java 虚拟机、java Api类库统称为jdk。jdk是开发的最小环境。

3.jre。java runtime environment,java 运行时环境。我们可以把java api 中的子集 Java SE API 和 Java虚拟机统称为jre。

所以,普通用户在访问某些网站的时候,提示需要安装java运行环境只需要安装jre即可。而相关的开发人员想要进行java开发的话,就需要下载jdk。

4.jdk的开发版本号和jdk的发行版本号。自从jdk1.3以来主版本发布都会使用动物命名,而修正版本则以昆虫命名。jdk1.5,以后,公开的发行版本为 jdk 5,jdk 6...而对应的开发版本号为jdk 1.5,jdk 1.6 。所以当别人聊jdk 6的时候,你应该知道了他说的其实是jdk的发行版本号。


二、jdk历史,发现新的技术

1.jdk 1.0 。技术包括:java虚拟机、applet、awt 。

2.jdk 1.1 。技术包括:内部类,反射,jar 文件格式、jdbc、javabeans、rmi。

3.jdk 1.2。拆分技术体系,分别为j2se(桌面级应用),j2ee(企业级应用,crm),j2me(移动应用) 。技术:EJB、 Java Plugin- in、Java IDL、Swing。第一次内置了JIT编译器。

4.jdk 1.3 类库改进。

5.jdk 1.4 。Java走向成熟的一个版本。新的技术特性:正则表达式、异常链、NIO、日志类、XML解析器、XSLT转换器等。

6.jdk 1.5 。语法上巨大改进,自动装箱、泛型、foreach、动态注解、枚举、可变长参数、遍历循环等。改进了内存模型。提供了java.util.concurrent 并发包。

7. jdk 1.6 。对虚拟机内部做了大量改进。

8.jdk 1.7 。提供新的G1收集器、加强对非java语言的调用、语言级的模块化支持、升级类加载架构等。

9.jdk 1.8 。新增lambda 表达式、提供函数式接口等。