1、默认初始化
1、类中的全局变量,在使用的时候才会默认初始化(如果没有初始化),默认初始化 数值型为0,对象为null、布尔型为false。
2、方法中局部变量不会默认初始化,在使用前需要手动初始化,否则编译不会通过
3、类的东西是先于 > 实例 出现
2、构造器初始化
子类构造器必须调用父类发构造器,如果没有显示地调用,则会默认隐士地调用父类的无参构造器。当一个类没有写构造器的时候,会默认隐式地加上无参构造器,如果写了,就不会默认添加无参构造器。
3、代码块初始化
- 代码块:在构造方法之前执行 (当初始化操作很复杂的时候,就可以考虑选择在代码块中初始化,其实效果一样的与构造器初始化)
- 静态代码块: 代码块属于实例,静态代码块属于类。静态代码块先于 > 普通代码块 执行