答案 0 :(得分:0)
Java
程序自上而下执行main()
- 方法。从那里它做了代码告诉它做的任何事情。在您的情况下,它可以总结如下:
将该行打印到控制台。
创建新Dog时,必须首先创建其超类(Mammal
)。 this("D(2)")
调用类Dog
的其他构造函数。
从那里实例化超类Mammal
,因为它扩展了DomesticAnimal
,必须先创建。并且由于变量da
被声明为在构造函数外部初始化,因此首先完成。
构造函数完成并打印该行。
实例化Mammal
的其余部分,与(3)中的相同
成功实例化超类后打印该行。与(4)
创建所有超类后,初始化构造函数外部的类Dog
的属性。与(5)和(3)相同。
打印行。与(6)和(4)
其他构造函数方法已经竞争,因此最初调用的构造函数的其余部分执行。即该行已打印。