1、 JDK、JRE、JVM
(1) JDK(JAVA DEVELOPMET KIT)
JDK顾名思义是JAVA的SDK(softwaredevelopment kit 软件开发包),JDK里面包含了JRE
(2) JRE(JAVA RUNTIMEENVIROMENT)
JAVA 运行时环境,为java程序的运行提供基础条件,包含JVM标准实现及Java核心类库,JRE文件夹中包含bin和lib文件夹 ,bin文件夹就是JVM标准实现所用调用的*.exe以及*.dll,lib中则是实现这些程序以及程序扩展所需要的类库,以及核心类库,其中的rt.jar中包含了程序编写时所调用的所有类。
(3) JVM(Java VirtualMachine)
Java虚拟机在执行字节码时,把字节码解释成具体平台上的机器指令执行。
JVM原理:http://www.importnew.com/17770.html
2、 JDK文件夹解析:
(1) Bin(binary): Java开发工具包 (JDK)中所包含的开发工具的可执行文件。PATH环境变量应该包含一个指示此目录的项。
(2) Lib :开发工具使用的文件(对应Bin中的文件)。其中tools.jar为工具类库(编译和运行等),它跟我们程序中用到的基础类库没有关系。我们注意到在bin目录下的各个exe工具的大小都很小,这是因为它们实际上仅仅相当于是一层代码的包装,这些工具的实现所要用到的类库都在tools.jar中。tools.jar还是远程调用等许多其他功能必须的jar包。dt.jar是运行环境类库,主要是Swing包。
(3) JRE
(4) include : C语言头文件,它支持使用 Java本地接口 [ web]和 Java虚拟机调试程序接口 [ web]的本地代码编程技术。
(5) SRC(压缩文件):包含了编写代码时,开发人员所用的所有类。
3、 关于对JDK的环境变量的设置
(1)变量名:JAVA_HOME
变量值:E:\java\jdk
用途:定义一个变量,供其他地方使用
(2)变量名:Path
变量值:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
用途:让系统在任何路径下都可以识别java、javac、javap等命令
(3)变量名:CLASSPATH
变量值:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;
用途:告诉jvm要使用或执行的class放在什么路径上,便于JVM加载class文件,.;表示当前路径,tools.jar和dt.jar为类库路径