关于 JVM 、JDK 和 JRE 几个名词的解释

JVM

JVM 全称 Java 虚拟机, 它是运行 Java 字节码的虚拟机。JVM 针对不同操作系统的区别实现了对应操作系统的实现,目的是在不同操作系统下运行相同的字节码,它都会给出相同的结果

字节码

字节码即扩展名为 .class 的文件,它不面向任何特点的处理器,只面向虚拟机。

字节码和不同操作系统的 JVM 实现是 Java 语言“一次编译,随处可以运行”的关键所在

JDK 和 JRE

JDKJava Development Kit 的缩写,它是功能齐全的 Java SDK。它拥有 JRE 所拥有的一切,还有编译器 javac 和工具(如 javadocjdb)。它能够创建和编译程序。
JREJava Runtime Eveirnoment 的缩小,它是 Java 运行时环境。它是运行已编译 Java 程序所需的所有内容的集合,包括 JVMJava 类库、Java 命令和其他的一些基础软件。但是,它不能用于创建程序。

import java 和 javax 包有什么区别?

javajavax 没有区别。起初 Java API 所必需的包都是以 java 开头的包,javax 当时只是扩展 API 包来使用。然后随着时间的推移,javax 逐渐扩展成员 Java API 的组成部分。但是,将扩展从 javax 包移动到 java 包确实太麻烦了,如果移动会破坏一堆现有的代码。因此,最终决定将 javax 划为标准 API 的一部分。