代码块
作用:用来初始化类、对象
代码块如果有修饰的话,只能使用static
分类:静态代码块 vs 非静态代码块
静态代码块:
内部可以有输出语句
随着类的加载而执行,而且只执行一次
如果一个类中定义了多个静态代码块,则按照声明的先后顺序执行
静态代码块的执行优先非静态代码块的执行
静态代码块内只能调用静态属性、静态方法,不能调用非静态结构
作用 初始化类的信息
非静态代码块
内部可以有输出语句
随着类的创建而执行
每创建一个对象,就执行一次非静态代码块
如果一个类中定义了多个非静态代码块,则按照声明的先后顺序执行
非静态代码块内可以调用静态属性、静态方法,也可以调用非静态属性、非静态方法
作用 可以在创建对象时,对对象的属性进行初始化