import及Java类的搜索路径
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
如果你希望使用Java包中的类,就必须先使用import语句导入。
import语句与C语言中的 #include 有些类似,语法为:
import package1[.package2…].classname;
package 为包名,classname 为类名。例如:
1import java.util.Date; // 导入 java.util 包下的 Date 类
2import java.util.Scanner; // 导入 java.util 包下的 Scanner 类
3import javax.swing.*; // 导入 javax.swing 包下的所有类,* 表示所有类
注意:
∙import 只能导入包所包含的类,而不能导入包。
∙为方便起见,我们一般不导入单独的类,而是导入包下所有的类,例如import java.util.*;。(更多详尽:/RA5iKhq)
Java 编译器默认为所有的 Java 程序导入了 JDK 的 ng 包中所有的类(import ng.*;),其中定义了一些常用类,如System、String、Object、Math 等,因此我们可以直接使用这些类而不必显式导入。但是使用其他类必须先导入。
前面讲到的”Hello World“程序使用了System.out.println(); 语句,System 类位于 ng 包,虽然我们没有显式导入这个包中的类,但是Java 编译器默认
已经为我们导入了,否则程序会执行失败。
Java类的搜索路径(参考网站:/RA5iKhq)
假设有如下的 import 语句:
1import p1.Test;
该语句表明要导入 p1 包中的 Test 类。
安装JDK时,我们已经将环境变量 CLASSPATH 设置为 .;%JAVA_HOME%\lib,而 JAVA_HOME 又为 D:\Program Files\jdk1.7.0_71,所以 CLASSPATH 等价
于 .;D:\Program Files\jdk1.7.0_71\lib。
Java 运行环境将依次到下面的路径寻找并载入字节码文件 Test.class:
∙.p1\Test.class("."表示当前路径)
∙D:\Program Files\jdk1.7.0_71\lib\p1\Test.class
如果在第一个路径下找到了所需的类文件,则停止搜索,否则继续搜索后面的路径,如果在所有的路径下都未能找到所需的类文件,则编译或运行出错。
你可以在CLASSPATH变量中增加搜索路径,例
如 .;%JAVA_HOME%\lib;C:\javalib,那么你就可以将类文件放在 C:\javalib 目录下,Java运行环境一样会找到。