在实际编程中,会经常遇到多个类中的某些方法实现逻辑类似的情况,这时我们可以将这些类中的相同部分抽象到父类中,对于有差异的地方,子类根据自身的实际需求来各自实现。
以羽毛球运动为例,打球必有发接发环节,发球分正手和反手两种(这里不谈论羽球技术细节),一般男单反手发球,女单正手发球,但发接发这个环节的流程是一致的。
abstract class Badminton
{ public abstract void Serve(); public abstract void Catch(); public abstract void Play();
}class MenSingle : Badminton
{ public override void Serve()
{
Console.WriteLine("反手发球......");
} public override void Catch()
{
Console.WriteLine("正手推底线");
} public override void Play()
{
Serve();
Catch();
}
}class&


