public override void Show() { Console.WriteLine("Type: Student"); base.Show(); Console.WriteLine("Major: " + major); }中override的作用
时间: 2024-03-18 11:45:20 浏览: 52
在C#中,`override`关键字表示当前函数是从基类中继承来的函数,并且在当前派生类中进行了重写。也就是说,`override`关键字用于实现函数的多态性。
在上面的程序中,`Student` 和 `Teacher` 类都继承了 `Person` 类,并且重写了 `Show()` 函数。在 `Show()` 函数中,我们调用了 `base.Show()` 函数,它表示调用基类的 `Show()` 函数,这样就能够显示基类的信息。然后,我们在派生类中添加了特定的信息(如 `Major` 或 `Subject`),以便更好地描述派生类的特征。
由于我们在 `Student` 和 `Teacher` 类中重写了 `Show()` 函数,所以在使用对象数组进行多态调用时,会自动调用相应派生类的 `Show()` 函数,而不是基类的 `Show()` 函数。这就是多态性的体现,它使得我们可以使用统一的方式对不同类型的对象进行操作。
阅读全文