C#入门-类的继承-疑惑

C#入门问题 菜鸟
类的继承相关

img

请问为什么输入参数”Timothy“后,下面的owner的值也都是“Timothy”呢

这是因为在代码中你有两个相同的赋值语句:

public Car(string owner): base(owner) [this.Owner = owner:}

首先,在构造函数中使用 base(owner) 调用了父类 Vehicle 的构造函数,并将参数 owner 传递给了父类的 Owner 属性。

然后,你又在同一行代码中使用了 this.Owner = owner,这会再次将参数 owner 的值赋给类的 Owner 属性。

因此,类的 Owner 属性始终为 "Timothy",因为这是构造函数中最后一次赋值的值。

这跟类的继承没有一毛钱关系
这根本就是实参传给形参,形参再赋值给成员变量的问题
如果你问的是基类里的代码为什么也走,是因为base(owner)调用了基类的构造函数

你觉得它应该是啥呢?你给构造函数传的参数就是Timothy