java中path和Classpath的区别

本机是win10

打开环境配置看看
存在CLASSPATH和Path两个东西
这里写图片描述
这里写图片描述

path是什么东西
比如
我们打开cmd
这里写图片描述
输入一个命令java
然后系统就会去找这个名字叫 java 可执行文件
那么,java这个文件在哪里?
系统就会在path里面去,看看那些路径有没有这个java执行文件

下图是path里面的配置路径
这里写图片描述
上图等价于下图
这里写图片描述
(这里JAVA_HOME=C:\Program Files\Java\jdk1.8.0_181)

再打开java可执行文件实际存在路径看看
这里写图片描述

明白了吧,意思就cmd窗口输入命令,系统会根据命令去扫描path路径,查找到java.exe.

然后执行它

这里写图片描述
配置path路径,是为了让系统知道你要用的命令在哪里(省去每次执行命令都要先定位到可执行文件所在目录,然后再执行命令这一麻烦步骤)

再来看看classpath
pathclass也是个路径
和path不一样的是什么呢?
来,先看看一般classpath里面都配置了哪些路径
这里写图片描述

.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
有这两个jdk里面jar包的路径

rt.jar是JAVA基础类库,dt.jar是关于运行环境的类库,tools.jar是工具类库 设置在classpath里是为了让jvm能根据路径找到这些所需的依赖。

CLASSPATH环境变量。作用是指定类搜索路径,要使用已经编写好的类,前提当然是能够找到它们了,JVM就是通过CLASSPATH来寻找类的.class文件

总而言之,path是Windows查找.exe文件的路径;classpath是jvm查找.class文件的路径

你可能感兴趣的:(java学习)