阅读量:2
在Java中,static关键字可以用来修饰类的成员变量和成员方法。它具有以下几种用法:
- 静态成员变量:
静态成员变量属于类本身,而不是属于类的实例对象。它在类加载时就会被初始化,并且所有的实例对象共享同一个静态变量。可以通过类名直接访问,不需要创建对象。
public class MyClass { public static int count; // 静态成员变量 public static void main(String[] args) { MyClass.count = 10; // 直接通过类名访问静态变量 System.out.println(MyClass.count); } }
- 静态成员方法:
静态成员方法可以直接通过类名调用,无需创建类的实例对象。静态方法中只能访问静态成员变量和调用其他静态成员方法,不能直接访问非静态成员变量和调用非静态成员方法。
public class MyClass { public static void printCount() { // 静态成员方法 System.out.println(MyClass.count); } public static void main(String[] args) { MyClass.count = 10; // 直接通过类名访问静态变量 MyClass.printCount(); // 直接通过类名调用静态方法 } }
- 静态代码块:
静态代码块是在类加载时执行,只执行一次。可以用来初始化静态变量或执行其他一次性的任务。
public class MyClass { public static int count; // 静态成员变量 static { // 静态代码块 count = 10; System.out.println("静态代码块执行"); } public static void main(String[] args) { System.out.println(MyClass.count); } }
需要注意的是,静态成员变量和静态成员方法可以通过类名直接访问,不需要创建对象,而非静态成员变量和非静态成员方法需要通过对象来访问。