1.概述
静态导入是jdk1.5后java出现的新特性,可以导入类中的静态成员。这样在使用这些静态成员时就不必再加包名和类名了,为编写程序带来一定便利。
2.案例引入
import java.util.*;
public class StaticImportDemo {
public static void main(String[] args) {
int[] arr={5,22,19};
//使用Arrays中的静态方法对数组进行排序
Arrays.sort(arr);
//使用Arrays中的静态方法将数组转化为字符串
System.out.println(Arrays.toString(arr));
}
}
说明:从以上程序代码中可以看到,使用了Arrays
类中的两个静态方法对数组进行操作,但每次使用方法时必须加上类名Arrays
,我们可以通过静态导入的方法避免这一麻烦。
修改后的代码:
import static java.util.Arrays.*;
public class StaticImportDemo {
public static void main(String[] args) {
int[] arr={5,22,19};
//使用Arrays中的静态方法对数组进行排序
sort(arr);
//使用Arrays中的静态方法将数组转化为字符串
System.out.println(toString(arr));
}
}
说明:从以上代码中可以看到,通过在import
后加上static
导入具体的类,则在main
中使用Arrays
中的成员时便不再需要加上类名。但需要注意,以上代码在使用Arrays
的toString
方法时依据加上了类名Arrays
。这是因为本类中也有一个继承于Object
的toString
方法,这时为了避免代码歧义不能省略静态方法类名。
3.使用格式
import static 包名+类名.* //导入全体静态成员
//或
import static 包名+类名.静态成员名 //导入具体静态成员
例:
import static java.util.Arrays.*;
//或
import static java.util.Arrays.sort;
4.实例应用
通过静态导入简化系统输出语句
示例代码 :
import static java.lang.System.*; //静态导入
public class StaticImportDemo {
public static void main(String[] args) {
out.println("这是简化后的输出语句");
}
}
说明:通过静态导入System
类的方式,可以在一定程度上简化输出语句的书写。