静态代码块:用static 修饰的代码块
①可以有输出语句。
②可以对类的属性、类的声明进行初始化操作。
③不可以对非静态的属性初始化,即:不可以调用非静态的属性和方法。
④ 静态代码块随着类的加载而加载并执行,类加载一次,所以其执行一次。
非静态代码块:没有static修饰的代码块
①可以有输出语句。
②可以对类的属性、类的声明进行初始化操作。
③除了调用非静态的结构外,还可以调用静态的变量或方法。
④每次创建对象的时候,都会加载并执行一次,且先于构造器执行。
程序中成员变量赋值的执行顺序