描述1:静态初始化块,只在类被java类装载器第一次装入系统时才被调用,且在整个过程中只调用这一次。
首先要明确概念:类何时被java类装载器装入系统。有下面两种情况:
第一种情况:当使用该类访问它的静态成员变量或使用该类调用其静态方法时,这个时候,尽管没有创建该类的对象,但该类还是被装入系统了。
第二种情况:当使用new关键字,创建该类的对象时,该类也将被装入系统。
所以,满足上面的任一种情况后,“静态初始化块”都将首先被调用,而且在整个过程中只被调用一次。后边当类再次被装入系统时,静态初始化块,不再被调用。