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