这篇文章上次修改于 321 天前,可能其部分内容已经发生变化,如有疑问可询问作者。
重写和多态
类的继承
- 类成员的"横向扩展"(成员越来越多)
- 类成员的"纵向扩展"(行为改变,版本增高)
- 类成员的隐藏(不常用)
- 重写与隐藏的发生条件:函数成员,可见,签名一致
多态(polymorphism)
- 基于重写机制(virtual->override)
- 函数成员的具体行为(版本)由对象决定
- 回顾: C#语言的变量和对象都是有类型的,所以会有"代差"
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;
namespace Learning2
{
class Program
{
static void Main(string[] args)
{
Vehicle v = new RaceCar();
v.Run();
}
}
class Vehicle
{
public virtual void Run()
{
Console.WriteLine("这是Vehicle的Run");
}
}
class Car : Vehicle
{
public override void Run()
{
Console.WriteLine("这是Car的Run");
}
}
class RaceCar : Car
{
public override void Run()
{
Console.WriteLine("Race car is running");
}
}
}
输出为:
Race car is running
只有一条评论 (QwQ)
支持