类的第四个成员:初始化块(代码块)
作用:用来初始化类的属性
分类:只能使用static
静态代码块:
1.里面可以有输出语句
2.随着类的加载而加载,而且只被加载一次
3.多个静态代码块之间按照顺序结构执行
4.静态代码块的执行要早于非静态代码块的执行
5.静态代码块中只能执行静态的结构(类属性,类方法)
非静态代码块:
1.可以对类的属性(静态&非静态的)进行初始化操作,同时也可以调用本类声明的方法(静态&非静态的)
2.里面可以有输出语句
3.一个类中可以有多个非静态的代码块,多个代码块之间按照顺序结构执行
4.每创建一个类的对象,非静态代码块就被加载一次
5.非静态代码块的执行要早于构造器
关于属性赋值的操作:
①默认的初始化
②显示的初始化或代码初始化(此处两个结构按照顺序执行)
③构造器中
④通过方法对对象的相应属性进行修改
package test11;
public class TestOrder {
public static void main(String[] args) {
Order o1 = new Order();
System.out.println(o1);
System.out.println("我是非静态代码块3");
System.out.println();
Order o2 = new Order();
Sys