类的第四个成员:初始化块(或代码块)
2、代码块如果有修饰的话,那只能使用static,而没有其它public之类的修饰
3、分类:
静态代码块:
①里面可以有输出语句;
②随着类的加载而加载,而且只被加载一次;
③多个静态代码块之间按照顺序结构执行;
④静态代码块的执行要早于非静态代码块的执行;
⑤静态的代码块中只能执行静态的结构(类属性、类方法)
非静态代码块:
①可以对类的属性(静态的&非静态的)进行初始化操作,同时也可以调用本类声明的方法(静态的&非静态的);
②里面可以有输出语句;
③一个类中可以有多个非静态的代码块,多个代码块之间按照顺序结构执行;
④每创建一个类的对象,非静态代码块就加载一次;
⑤非静态代码块的执行要早于构造器
关于属性赋值的操作:①默认的初始化;②显示的初始化或者代码块初始化(此处两个结构按照顺序执行) ;③构造器中;④通过方法对对象的属性进行修改
默认的初始化:在方法中属性的默认值,private int age;//默认为0
显示的初始化:在方法中对属性进行初始化,private int age = 10;//显示赋值
非静态代码块:代码块写在大括号内,可以用来初始化属性,所以也叫初始化块。
例如:
{ ordeId = 1001; orderName = "AA"; System.out.println(); }
静态代码块:static+大括号
static{
}
网友评论