什么是Java-背景知识
1.JDK
Java Development Kit,java 的开发和运行环境,java 的开发工具和 jre。
2.JRE
Java Runtime Environment,java 程序的运行环境,java 运行的所需的类库+JVM(java 虚拟机)。
3.配置环境变量
让 java jdk\bin 目录下的工具,可以在任意目录下运行,原因是,将该工具 所在目录告诉了系统,当使用该工具时,由系统帮我们去找指定的目录。
环境变量的配置:
1):永久配置方式:JAVA_HOME=%安装路径%\Java\jdk path=%JAVA_HOME%\bin
2):临时配置方式:set path=%path%;C:\Program Files\Java\jdk\bin 特点:系统默认先去当前路径下找要执行的程序,如果没有,再去 path 中设置的路径下 找。
classpath 的配置:
1):永久配置方式:classpath=.;c:;e:\
2):临时配置方式:set classpath=.;c:;e:\
注意:
在定义 classpath 环境变量时,需要注意的情况 如果没有定义环境变量 classpath,java 启动 jvm 后,会在当前目录下查找要运行的类文件; 如果指定了 classpath,那么会在指定的目录下查找要运行的类文件。 还会在当前目录找吗?两种情况:
CLASSPATH 是什么?它的作用是什么?
它是 javac 编译器的一个环境变量。它的作用与 import、package 关键字有关。当你写下 improt java.util.*时,编译器面对 import 关键字时,就知道你要引入 java.util 这个 package 中的类; 但是编译器如何知道你把这个package放在哪里了呢?所以你首先得告诉编译器这个package的所 在位置;如何告诉它呢?就是设置 CLASSPATH 啦 😃 如果 java.util 这个 package 在 c:/jdk/ 目 录下,你得把 c:/jdk/这个路径设置到 CLASSPATH 中去!当编译器面对 import java.util.*这个语 句时,它先会查找 CLASSPATH 所指定的目录,并检视子目录 java/util 是否存在,然后找出名称吻 合的已编译文件(.class 文件)。如果没有找到就会报错!CLASSPATH 有点像 c/c++编译器中的 INCLUDE 路径的设置哦,是不是?当 c/c++编译器遇到 include 这样的语句,它是如何运作的?哦, 其实道理都差不多!搜索 INCLUDE 路径,检视文件!当你自己开发一个 package 时,然后想要用这 个 package 中的类;自然,你也得把这个 package 所在的目录设置到 CLASSPATH 中去!CLASSPATH 的设定,对 JAVA 的初学者而言是一件棘手的事。所以 Sun 让 JAVA2 的 JDK 更聪明一些。你会发现, 在你安装之后,即使完全没有设定 CLASSPATH,你仍然能够编译基本的 JAVA 程序,并且加以执行。
PATH 环境变量
PATH 环境变量。作用是指定命令搜索路径,在命令行下面执行命令如 javac 编译 java 程序时, 它会到 PATH 变量所指定的路径中查找看是否能找到相应的命令程序。我们需要把 jdk 安装目录下 的 bin 目录 增加 到现 有的 PATH 变 量中 , bin 目录 中包 含经 常要 用到 的 可执 行文 件 如 javac/java/javadoc 等待,设置好 PATH 变量后,就可以在任何目录下执行 javac/java 等工具了。
##4.javac 命令和 java 命令做什么事情呢? 要知道 java 是分两部分的:一个是编译,一个是运行。
###javac: 负责的是编译的部分,当执行 javac 时,会启动 java 的编译器程序。对指定扩展名 的.java 文件进行编译。 生成了 jvm 可以识别的字节码文件。也就是 class 文件,也就是 java 的 运行程序。
###java: 负责运行的部分.会启动 jvm.加载运行时所需的类库,并对 class 文件进行执行. 一个文件要被执行,必须要有一个执行的起始点,这个起始点就是 main 函数.
