代码块的理解
-
代码块的作用:用来初始化类、对象
-
代码块如果有修饰的话,只能使用static
-
分类:静态代码块、非静态代码块
-
静态代码块:
- 内部可以有输出语句
- 随着类的加载而执行,而且只执行一次
- 作用:初始化类的信息
- 如果一个类中定义了多个静态代码块,则按照声明的先后顺序执行
- 静态代码块的执行要先于非静态代码块
- 静态代码块内只能调用静态的属性和方法,不能调用非静态结构
-
非静态代码块:
- 内部可以有输出语句
- 对着对象的创建而执行
- 每创建一次对象,就执行一次非静态代码块
- 作用:可以在创建对象时,对对象进行初始化
- 如果一个类中定义了多个非静态代码块,则按照声明的先后顺序执行
- 费静态代码块内可以调用静态结构和费静态结构
-
对属性赋值的位置:
1.默认初始化
2.显式初始化/5.在代码块中赋值
3.构造器中赋值
4.通过 “对象.方法” 或 "对象.属性"的方式赋值
以上操作的先后顺序:1----------------->2/5--------------->3--------------->4