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;
        }

    }

 

posted @ 2019-10-30 20:31  康世行  阅读(26)  评论(0编辑  收藏  举报