类初始化包括3部分:
1、非静态块定义的初始值;
2、类中的变量属性的赋的初始值;(1和2是顺序执行的)
3、类的构造器中的初始值;(1和2执行后,再执行的)
存在继承的情况如下:
类中存在静态块和静态变量时:
1、静态块和静态变量 是在类加载的时候执行赋值的,且执行一次,二者的执行顺序和代码顺序一致;
2、类实例化时,仅对非静态块和变量;
类继承时:
初始化子类时,子类不仅要保存本类的所有实例变量,也要保存它的所有父类定义的全部实例变量;(包括父子类定义的相同的变量)
final:
1、修饰变量不能赋值;
1.1、修饰实例变量:
1.2、修饰静态变量:
2、final修饰方法不能被重写
3、内部类中的局部变量