Java之为何配置环境变量

一、不要问一个程序员为什么命名是基础零(^_^)

二、Java为什么跨平台:

因为有java虚拟机,一个程序的运行必然要依赖于系统,java的跨平台是因为java虚拟机jvm把不同平台编写的代码编译成本机可以识别的机器码从而运行。因此是java的虚拟机jvmjava实现的跨平台。需要注意的是跨平台的是java而不是虚拟机,虚拟机是不跨平台的。Java的虚拟机是一个桥梁。

三、为什么要配置jdk的环境变量?

众所周知,要开发java程序需要配置java的环境变量,主要包括三个环境变量:JAVA_HOMEpathCLASSPATH。但是我们为什么要进行配置呢?

因为人机交互有两种,一种就是图形化工具,我们使用鼠标点一点就可以动了,而另一种就是原始的命令行工具。入下图的jdk安装之后的工具,这些工具用鼠标点一点只会傲娇的一闪而逝,because他们是命令行工具,需要使用dos进行访问。

上图:

这个是安装javajdk之后的bin文件夹目录。我们在编译java的时候使用的javac HelloWorld 命令行工具当中的javac就是javac.exe这个工具。比如说我这边有一个TianJia.java

 

我使用javac进行编译之后出现了class文件。注意上图的目录,我是在源文件的地址进行调用javac这个编译工具的。大家知道,如果我没有配置环境变量,这么滴是行不通的。为什么?因为使用命令行工具的话,我们的操作系统首先会从当前目录去寻找命令行工具的命令程序,如果没有找到就会去path环境变量下所指定的目录进行寻找,如果还没有找到就会抛出一个异常。

 


这个是我配置的环境变量

 

 

 

 

综上:配置环境变量的目的是为了在任何目录下都可以调用JDK当中的工具,因为系统会在当前目录中寻找命令程序,没找到的话就去path变量下规定的目录进行寻找。还没有找到才抛出异常。所以我们需要配置环境变量,指向jdk安装的bin路径。

 

四、为什么要配置JAVA_HOME?

有人会有疑问,直接把整个路径copy过去到path下不就好了吗?为什么还要使用JAVA_HOME呢?不使用JAVA_HOME自然也是可以的,但是最好使用,原因是,path变量太过重要了,我们最好不要经常去改动它,万一出错容易万劫不复。所以配置JAVA_HOME,当jdk的路径修改或者更换jdk版本的时候就不需要动到path,直接值修改JAVA_HOME就好了。

 

五、Classpath的作用?

 

我们使用javac HelloWorld之后会出现一个class文件,这个文件事实上才是java虚拟机执行的文件,classpath变量作用是指向class文件存放的地址。也就是路径。so easy

 

posted @ 2017-10-21 15:14  黑色很白  阅读(438)  评论(0编辑  收藏  举报