静态技术包括静态数据、静态方法、静态初始化程序块等。
静态数据是属于某个类的数据成员,而非属于某个具体的对象。也就是说这个类创造出来的对象,都共用同一个数据。
class A {
static int x;
...
}
静态方法也是属于整个类的,而且静态方法中不能调用非静态数据或方法。
class B {
public static void Set(int x) {
...
}
}
用静态数据和静态方法的特性,我们可以专门构造工具类或者验证类。
静态初始化程序块,会在类的任何一个静态方法被调用或者任何一个构造函数被执行时被执行。
class C {
...
static {
Integer in[4] = new Integer();
for (int i = 0; i < in.length; ++i) {
...
}
}
}