Java中的static关键字
-
static修饰变量,则该变量为类变量(静态变量),可以并且推荐通过类名.变量名进行调用。也能够通过对象进行调用
- PS.常用于多线程
-
static修饰方法,则该方法为类方法(静态方法),可以并且推荐通过类名.方法名进行调用。也能够通过对象进行调用
-
静态方法不能调用普通成员方法(因为静态方法在加载类时就存在了;而普通方法在加载类时并不存在、需要new对象后才存在)
-
静态方法不能调用普通成员变量,原因同上
-
public class Test{
private static int a;//静态变量
public static void test(){//静态方法
System.out.println("a = " + a);//静态方法只能调用静态变量、不能调用普通成员变量
}
public static void main(String[] args){
Test.test();
}
}
-
static修饰代码块,称之为静态代码块。详见另外一篇博客匿名代码块
-
static 静态导入包,可直接使用方法及变量,无需使用类名进行调用。使用较少
//静态导入包
import static lava.lang.Math.random;
import static lava.lang.Math.PI;
public class Test{
public static void main(String[] args){
System.out.println(random());
System.out.println(PI);
}
}