Java import的2种用法(附带实例)
import 是 Java 的关键字之一,通常用来导入类包。自 JDK5.0 版本开始,import 还可以用来导入静态成员。
例如,如果在程序中使用 import 关键字导入 com.mr.Math 类,在程序中使用 Math 类时就会自动选择 com.mr.Math 类。
import 关键字的语法如下:
注意,如果类定义中已经导入 com.mr.Math 类,在类体中再使用其他包中的 Math 类时就必须指定完整的带有包格式的类名。例如,在上述情况下再使用 java.lang 包的 Math 类时就要使用全名格式 java.lang.Math。
当在程序中添加 import 关键字时,它会开始在 CLASSPATH 指定的目录中进行查找,查找子目录 com.mr,然后从这个目录下编译完成的文件中查找符合的名称,最后寻找到 Math.class 文件。
另外,当使用 import 指定了一个包中的所有类时,并不会指定这个包的子包中的类,如果使用这个包的子包中的类,则需要再次对子包进行单独引用。
使用 import 导入静态成员的语法如下:
Java import关键字导入包
如果某个类中需要使用 Math 类,那么如何告知编译器当前应该使用哪一个包中的 Math 类,是 java.lang.Math 类还是 com.mr.Math 类?这是一个令人困扰的问题,此时可以使用 Java 中的 import 关键字指定。例如,如果在程序中使用 import 关键字导入 com.mr.Math 类,在程序中使用 Math 类时就会自动选择 com.mr.Math 类。
import 关键字的语法如下:
import com.mr.*; // 导入 com.mr 包中的所有类 import com.mr.Math // 导入 com.mr 包中的 Math 类在使用 import 关键字时,可以指定类的完整描述,如果为了使用包中更多的类,则可以在使用 import 关键字指定时在包指定后加上 *,这表示可以在程序中使用该包中的所有类。
注意,如果类定义中已经导入 com.mr.Math 类,在类体中再使用其他包中的 Math 类时就必须指定完整的带有包格式的类名。例如,在上述情况下再使用 java.lang 包的 Math 类时就要使用全名格式 java.lang.Math。
当在程序中添加 import 关键字时,它会开始在 CLASSPATH 指定的目录中进行查找,查找子目录 com.mr,然后从这个目录下编译完成的文件中查找符合的名称,最后寻找到 Math.class 文件。
另外,当使用 import 指定了一个包中的所有类时,并不会指定这个包的子包中的类,如果使用这个包的子包中的类,则需要再次对子包进行单独引用。
Java import导入静态成员
import关键字除导入包外,还可以导入静态成员,这是由 JDK 5.0 以上版本提供的功能,导入静态成员可以使编程更为方便。使用 import 导入静态成员的语法如下:
import static 静态成员【实例】使用 import 导入静态成员。在项目中创建 ImportTest 类,在该类中使用 import 关键字导入静态成员。
package com.mr; import static java.lang.Math.max; // 导入静态成员方法 import static java.lang.System.out; // 导入静态成员变量 public class ImportTest { public static void main(String[] args) { out.println("1 和 4 的较大值为:" + max(1, 4)); // 在主方法中可以直接使用这些静态成员 } }运行结果如下:
1和4的较大值为:4
从本实例中可以看出,分别使用 import static 导入了 java.lang.Math 类中的静态成员方法 max() 和 java.lang.System 类中的 out 成员变量,这时就可以在程序中直接引用这些静态成员,如在主方法中直接使用 out.println() 表达式以及 max() 方法。