C#抽象方法的继承与多态- - -07
例子:有两个动物,这个两个动物都会叫和咬人。只不过咬人和叫的声音有点区别,利用多态和继承实现这个小例子。
父类:使用抽象类和抽象方法实现
public abstract class Animal
{
//使用抽象方法,使子类进行重写。
public abstract string Shout();
//{
// return "";
//}
public abstract string Bite();
//{
// return "";
//}
public string name;
}
子类:
猫:继承与父类Animal ,把父类的方法进行了重写
public class Cat:Animal
{
//利用构造函数进行赋初值
public Cat(string name)
{
this.name = name;
}
//重写叫的方法
public override string Shout()
{
return "我的名字叫:" + name + ",喵喵";
}
//重写咬人的方法
public override string Bite()
{
return "我的名字叫:" + name + ",抓人";
}
}
狗:和猫类一样
public class Dog:Animal
{
//使用构造函数进行初始化
public Dog(string name)
{
this.name = name;
}
//重写父类的叫方法
public override string Shout()
{
return "我的名字叫" + name + ",汪汪";
}
//重写父类咬人的方法
public override string Bite()
{
return "你是坏人,我要咬你"+name;
}
}
欢迎访问csdn的博客:
https://blog.csdn.net/kangshihang1998?spm=1010.2135.3001.5343