要使用静态成员(方法和变量)我们必须给出提供这个静态成员的类。
使用静态导入可以使被导入类的静态变量和静态方法在当前类直接可见,使用这些静态成员无需再给出他们的类名。我们可以采用静态导入(static import)的方式 导入常量类,就可以避免用类名来修饰常量名,静态导入允许你在调用其它类中定义的静态成员时,忽略类名。
静态导入的语法是:
import static 包名.类名.静态成员变量;
import static 包名.类名.静态成员函数;
比如先在一个包中定义一个这样的类:
package com.example.learnjava;
public class Common
{
public static final int AGE = 10;
public static void output()
{
System.out.println("Hello World!");
}
}
在另一个包中使用时,如果不用静态导入,是这样用的:
package com.example.learnjava2;
import com.example.learnjava.Common;
public class StaticImportTest
{
public static void main(String[] args)
{
int a = Common.AGE;
System.out.println(a);
Common.output();
}
}
使用静态引入时是这样的:
package com.example.learnjava2;
import static com.example.learnjava.Common.AGE;
import static com.example.learnjava.Common.output;
public class StaticImportTest
{
public static void main(String[] args)
{
int a = AGE;
System.out.println(a);
output();
}
}
前面加入了导入语句,将Common类导入,使用其中的静态成员变量和静态方法时需要加上类名。
静态引入的缺点:过度地使用静态导入会在一定程度上降低代码的可读性。