老师看看我的理解对吗
来源:2-14 继承的初始化顺序
Wonwayshon
2020-04-21 21:07:19
继承的初始化顺序,先按先后顺序运行父类的静态成员,再按先后顺序运行子类的静态成员,然后运行父类的成员属性创建和赋值,接下来运行父类的构造代码块,然后运行父类的构造方法,最后运行子类的成员属性创建和赋值,接下来运行子类的构造代码块,然后运行子类的构造方法。
子类继承父类的已初始化属性也会继承到属性的值,子类修改继承的属性的值不会影响到父类属性的值。
1回答
同学你好,同学的理解初始化顺序是没问题的,但是父子类的属性创建和赋值是跟初始化顺序是没有关系的
初始化顺序是这样的
继承的初始化顺序:(父)静态成员初始化->(父)静态代码块 ->(子)静态成员初始化->(子)静态代码块 -> (父)非静态成员初始化->(父)非静态代码块 ->(父)构造方法 ->(子)非静态成员初始化->(子)非静态代码块 ->(子)构造函数
同学可以结合这个图片来理解下
祝:学习愉快!
相似问题