JAVA 笔记

一、Java 的起源与演变

Java 是由 sun 公司在 1991 年成立了一个由詹姆斯·高斯林领导的名为“Green”的小组,目

的是为了开发一种能够在各种消费性电子产品上运行的架构。

1995 年 sun 公司发行 java1.0 版本;

1997 年发布 java1.1 版本;

1998 年发布 java1.2 版本;

2000 年发布 java1.3 版本;

2002 年发行 java1.4 版本;

2004 年发布 java5 版本(内部版本号为 1.5.0);

2006 年发布 java6 版本;

2009 年 sun 公司被甲骨文收购,2011 年发布 java7 版本;

2014 年发布 java8 版本;

2017 年发布 java9 版本;

2018 年 3 月发布 java10 版本;

2018 年 6 月发布 java11 版本(我在学习的版本)

···

1. java 体系

JavaSE:标准版,各应用平台的基础,桌面开发和低端商务应用的解决方案;

JavaEE:企业版,以企业为环境而开发应用环境的解决方案;

JavaME:微型版,致力于微型产品和嵌入式设备的最佳解决方案;

2. java 特性

Java 是一种纯面向对象的编程语言,一种与平台无关的语言(可以跨平台运行),一种吸收

了 C/C++特性的健壮的语言,具有较高的安全性。

3. JDK,JRE,JVM 的关系及区别

JDK:JDK(Java SE Development Kit),Java 标准开发包,提供了编译、运行 Java 程序所需的各

种工具和资源,包括 Java 编译器、Java 运行时环境,以及常用的 Java 类库等。

JRE:JRE( Java Runtime Environment) 、Java 运行环境,用于解释执行 Java 的字节码文件。普

通用户而只需要安装 JRE(Java Runtime Environment)来运行 Java 程序。而程序开发者必

须安装 JDK 来编译、调试程序。

JVM:JVM(Java Virtual Mechinal),Java 虚拟机,是 JRE 的一部分。它是整个 java 实现跨平台

的最核心的部分,负责解释执行字节码文件,是可运行 java 字节码文件的虚拟计算机。所

有平台的上的 JVM 向编译器提供相同的接口,而编译器只需要面向虚拟机,生成虚拟机能

识别的代码,然后由虚拟机来解释执行。

当使用 Java 编译器编译 Java 程序时,生成的是与平台无关的字节码,这些字节码只面

向 JVM。不同平台的 JVM 都是不同的,但它们都提供了相同的接口。JVM 是 Java 程序跨平

台的关键部分,只要为不同平台实现了相应的虚拟机,编译后的 Java 字节码就可以在该平

台上运行。区别:JDK 用于开发,JRE 用于运行 java 程序 ;如果只是运行 Java 程序,可以只安装 JRE,

无序安装 JDK;JDk 包含 JRE,JDK 和 JRE 中都包含 JVM;JVM 是 java 编程语言的核心并

且具有平台独立性。

Java 的跨平台原理:

Java 源代码---编译--->java 字节码(可跨平台)

---运行--->JVM(java 虚拟机)→Windows,Linux

等平台。JVM 屏蔽了底层运行平台的差别,实现了“以此编译,随处运行”。

垃圾回收器:

不在使用的内存空间内存空间要回收——垃圾回收,而 java 语言消除了程序员回收无用垃

圾内从空间的责任。

环境变量的作用:为了更加方便的打开应用。