1、抽象一个动物类,会说话和走路。
public abstract class Animal()
{
public abstract void Speak();
public abstract void Walk();
}
2、抽象出能力,有的动物会飞,有的动物能用四条腿走路
interface IFly
{
void Fly()
{
Console.WriteLine("I can fly");
}
}
interface IWalk
{
void Walk();
}
3、实现具体动物类,比如麻雀会说会走路会飞
class Sparrow : Animal, IFly
{
public override void Speak()
{
Console.WriteLine("I am a sparrow,I can speak!");
}
public override void Walk()
{
Console.WriteLine("I am a sparrow,I can walk!");
}
}
实现具体动物类,小狗会说会四条腿走路,不会飞
class Dog : Animal,IWalk
{
public override void Speak()
{
Console.WriteLine("I am a dog,I can wang wang wang!");
}
public override void Walk()
{Console.WriteLine("I am a dog,I can walk on two legs!");
}
void IWalk.Walk()
{Console.WriteLine("I can walk on all fours!");
}
}
具体调用
Dog dog = new Dog();
dog.Speak();
dog.Walk();
IWalk iwalk = new Dog();
iwalk.Walk();
Sparrow sparrow = new Sparrow();
sparrow.Speak();
sparrow.Walk();
IFly fly = new Sparrow();
fly.Fly();
运行效果:
项目链接地址:
https://files.cnblogs.com/files/blogs/815970/AnimalSimulateSys.rar?t=1760158312&download=true