静态字段与静态方法
之前我们都定义的main方法都被标记了static修饰符,那到底是什么意思?下面我们来看看
静态字段
如果将一个字段定义为static,每个类只有一个这样的字段。而对于非静态的实例字段,每个对象都有自己的一个副本。例如,假设需要给每一个员工赋予唯一的标识码。这里给Employee类添加一个实例字段id和一个静态字段nextId:
highlighter- Java
class Employee {
// 定义静态字段nextId
private static int nextId = 1;
private int id;
}
现在,每一个Employee对象都有一个自己的id字段,但这个类的所有实例将共享一个nextId字段。换句话说,如果有1000个Employee类对象,则有1000个实例字段id,分别对应每一个对象。但是,只有一个静态字段nextId。即使没有Employee对象,静态字段nextId也存在。它属与类,而不属于任何单个的对象。
下面实现一个简单的方法:
highlighter- Java
public void setId() {
id = nextId;
nextId++;
}
假定为harry设置员工标识码:
highlighter-
harry.setId();
harry的id字段被设置为静态字段nextId当前的值,并且静态字段nextId的值加1:
highlighter- Python
harry.id = Employee.nextId;
Employee.nextId++
静态常量
静态变量使用的比较少,但静态常量却很常用。例如,在Math类中定义一个静态常量:
highlighter- Java
public clas

本文详细介绍了Java中的静态字段和静态方法,包括它们的作用、使用场景及如何定义。静态字段允许类共享数据,静态方法不依赖于对象实例。文中还提到了静态常量的使用,如Math类中的PI,以及静态方法的应用,如工厂方法和main方法。此外,通过一个示例展示了静态字段和方法的实际操作。
最低0.47元/天 解锁文章
1629

被折叠的 条评论
为什么被折叠?



