发布时间:2023-02-17 文章分类:编程知识 投稿人:王小丽 字号: 默认 | | 超大 打印

关于静态代码块和匿名代码块以及结构体在程序运行过程中的调用顺序实验(续)

之前发过一篇博客讲述自己对静态代码块、匿名代码块以及结构体在程序中运行结果的小实验。本次再接触到abstract抽象类后,觉得在做一个实验,看看抽象类方法继承中三个模块的调用顺序。所编写的代码如下:

关于静态代码块和匿名代码块以及结构体在程序运行过程中的调用顺序实验(续)

关于静态代码块和匿名代码块以及结构体在程序运行过程中的调用顺序实验(续)

关于静态代码块和匿名代码块以及结构体在程序运行过程中的调用顺序实验(续)

关于静态代码块和匿名代码块以及结构体在程序运行过程中的调用顺序实验(续)

​ 可以看到,与普通类的继承情况不同,在抽象类的继承调用中,使用new调用子类会先进入抽象类调用静态构造体,然后再回到子类调用子类的静态构造体,之后的顺序同前面的实验部分二。因此,需要主要加以区分。