结构:
{
内容;
}
作用:用来初始化类、对象的信息
代码块只能用static修饰。
相当于另外一种形式的构造器(对构造器的补充机制),可以做初始化的操作。
如果多个构造器中都有重复的语句,可以抽取到初始化块中,提高代码的重用性。
代码的分类:
静态代码块: ①内部可以有输出语句 ②随着类的加载而执行,而且只执行一次 。 ③作用:初始化类的信息。 ④静态代码块优先于非静态代码块的执行。
⑤只能调用静态的属性和方法,不能调用非静态的结构。
非静态代码块: ①内部可以有输出语句。
②随着对象的创建而执行(在构造器之前)。
③每创建一个对象,就执行一次非静态代码块。
④作用:可以在创建对象时,对对象的属性等进行初始化。
③可以调用静态和非静态的属性和方法。