静态关键字(无论是变量还是块)都属于该类。因此,当调用该类时,将执行这些变量或块。因此,大多数初始化将在static关键字的帮助下完成。由于它属于类本身,因此该类可以直接访问它,而无需创建该类的实例。
让我们举个例子,有一个鞋类,其中有多个变量,例如颜色,尺寸,品牌等。这里,如果鞋类制造公司只有一个品牌,那么我们应该将其初始化为静态变量。因此,当调用鞋类并在那时制造不同类型的鞋(通过创建该类的实例)时,每次创建新鞋时颜色和尺寸都会占用内存,但在这里,品牌是所有鞋的共同属性,这样一来,无论制造多少鞋,它都会占据一次内存。
例:
class Shoe {
int size;
String colour;
static String brand = "Nike";
public Shoe(int size, String colour) {
super();
this.size = size;
this.colour = colour;
}
void displayShoe() {
System.out.printf("%-2d %-8s %s %n",size,colour, brand);
}
public static void main(String args[]) {
Shoe s1 = new Shoe(7, "Blue");
Shoe s2 = new Shoe(8, "White");
System.out.println("=================");
s1.displayShoe();
s2.displayShoe();
System.out.println("=================");
}
}