从接触java到现在,零零散散的敲敲代码,也快两年了。目前,在校大三学生,快大四了,学的比较渣。现在在重新撸java。就感觉最近两个月敲代码,敲了比三年敲的代码还多。现在准备边学,边再回头总结
path:为系统指定相关程序(如javac.exe、java.exe等)所在的路径。
classpath:为Java虚拟机指定加载的.class文件(也称类文件)所在的路径。
在搜索路径时二者都遵从 由前向后的 原则,一旦找到符合条件的路径就不再继续。所以在多个JDK并存时,又同时配置了两个JDK安装目录的路径。
比如说:C:\jdk1.7\bin;C:\jdk1.8\bin;
那么程序在启动的时候会启动哪个呢?就按照 由前向后的顺序,所以它会先启动C:\jdk1.7\bin下的相关程序。
另外,javac命令是默认在当前目录下生成编译后的.class文件,而classpath又默认的是当前的目录,所以classpath总是引导Java虚拟机在当前目录中寻找并加载生成在当前目录下的.class文件。
Java虚拟机只会搜索classpath指定路径下的.class文件,如果是.jar包文件,那么久需要配置包含.jar包的文件名称的完整路径才行。比如D:\classes;D:classes\B.jar。