Inheritance

完成下面五个任务:

  1. 在OnlineGDB中创建三个class,分别为Mammal, Dog和Main。抄写图片中的代码。

  2. 实现Mammal中的三个accessor method,分别命名为isVertebreate(), getMileProducer(), getHairColor()。

  3. 实现Dog中的accessor method,命名为getName()

  4. 在main()中抄写如下代码,运行并观察结果:

  1. 思考并回答下列问题,将答案以注释的形式写在main()函数的后面:

  • 父类和子类分别有几个构造函数,它们分别有几个参数?

  • 创建myDog1和myDog2时,分别调用了父类的哪个构造函数?

  • myDog1.getName()和myDog1.getHairColor()的值分别是多少?为什么?

  • myDog1.isVertebrate()和myDog1.isMilkProducer()的值分别是多少?为什么?

  • 注意Dog类中并没有定义getHairColor(),但是myDog1和myDog2依然可以调用它。为什么呢?

  • myDog2的头发颜色是什么?它的头发颜色是在哪里被赋值的?

  • 结合这个例子,谈谈你对继承的理解。

Last updated