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

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

  • Application类(带main方法)

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

  • 抽象类Action

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

  • 继承类A

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

  • 运行结果如下:

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

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

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。