静态字段和静态方法
359字约1分钟
2024-08-10
静态字段
用 static
修饰的字段,称为静态字段
class Person {
// 定义静态字段name
public static String name;
}
推荐用类名来访问静态字段。可以把静态字段理解为描述 class
本身的字段(非实例字段)
public static void main(String[] args) {
// 创建实例,通过 实例变量.静态字段 访问
Person person = new Person();
System.out.println(person.name);
// 类名.静态字段 访问
System.out.println(Person.name);
}
静态方法
有静态字段,就有静态方法。用 static
修饰的方法称为静态方法
class Person {
// 静态字段
public static String name;
// 静态方法
public static void sayHello() {
System.out.println("Hello!");
}
}
因为静态方法属于 class
而不属于实例,因此,静态方法内部,无法访问 this
变量,也无法访问实例字段,它只能访问静态字段
public static void main(String[] args) {
// 创建实例,通过 实例变量.静态方法名 调用方法
Person person = new Person();
person.sayHello();
// 类名.静态方法名 调用方法
Person.sayHello();
}
接口的静态字段
interface
是一个纯抽象类,所以它不能定义实例字段。但是,interface
是可以有静态字段的,并且静态字段必须为 final
类型
public interface Person{
// 圆周率
public static final Double PI = 3.1415926;
// interface的字段只能是public static final类型,省略写法
Double PI2 = 3.1415926;
}