类实例化和实例初始化

类实例化和实例初始化_第1张图片 

就算不写main方法里面的3句,也会执行5 1 10 6 因为main方法所在的类需要先加载和初始化 

执行顺序如下:先初始化父类再初始化子类

静态实例变量显示赋值和静态代码块代码从上到下顺序执行(根据书写顺序)  

子类的实例化方法:

(1)super()(最前)

(2)i=test()

(3)子类的非静态代码块

(4)子类的无参构造(最后)

父类的实例化方法:

(1)super()(最前)

(2)i=test()(注意:这里输出的子类重写的方法)

(3)父类的非静态代码块

(4)父类的无参构造(最后)

非静态实例变量显示赋值和非静态代码块代码从上到下顺序执行(根据书写顺序)

每次创建实例对象,调用对应的构造器,执行对应的init方法 

类实例化和实例初始化_第2张图片 

 

你可能感兴趣的:(java,开发语言)