import static 是Java的静态导入语法,允许省略类名前缀直接调用public static方法或常量,如max(3,5)替代Math.max(3,5),但需谨慎使用以防降低可读性。
Java 中的 import static 是一种静态导入语法,它允许你**省略类名前缀,直接调用其他类的 public static 方法或常量**,让代码更简洁,但需谨慎使用,避免可读性下降。
语法格式为:import static 包名.类名.静态成员名;
或导入该类所有静态成员:import static 包名.类名.*;
注意:只能导入 public static 的字段或方法;非静态成员、私有静态成员无法导入。
比如想不用写 Math.max(3, 5),而直接写 max(3, 5):
import static java.lang.Math.max;import static java.lang.Math.abs;public class Demo { public static void main(String[] args) { int a = max(10, 20); // ✅ 直接调用,无需 Math. int b = abs(-15); // ✅ 同样省略类名 System.out.println(a + " " + b); }}
import static org.junit.Assert.*; 后可直接写 assertEquals(...)、assertTrue(...)
import static java.util.Collections.emptyList;,之后直接写 emptyList()
import static 包名.类名.*;,尤其当多个类有同名静态方法时,容易引发编译错误或语义混淆如果出现编译错误“cannot resolve symbol”,检查以下几点:
立即学习“Java免费学习笔记(深入)”;
private static void foo() {} 无法导入)Math.PI 不能写成 math.pi)Math.max(...)