05_多态之抽象类

Posted on 2020-08-24 22:42  NCY_1991  阅读(115)  评论(0编辑  收藏  举报

/*************** 基础 ***************/

1.抽象成员只能存在于抽象类中;

2.子类如果继承了抽象父类,必须实现抽象父类的所有方法;

3.多态实现的方法:声明父类去指向子类的对象;

 class Program
    {
        static void Main(string[] args)
        {
            //多态的实现:声明父类指向子类的对象
            Animal[] a={new Cat(),new Dog(),new Pig()};
            for (int i = 0; i < a.Length; i++)
            {
                a[i].Bark();
            }         
        }  
    }

    //抽象成员只能存在于抽象类中
    abstract class Animal
    {
        public abstract void Bark();
    }

    class Cat : Animal
    {
        public override void Bark()
        {
            Console.WriteLine("喵喵"); 
        }

    }

    class Dog : Animal
    {
        public override void Bark()
        {
            Console.WriteLine("旺旺"); ;
        }

    }

    class Pig : Animal
    {
        public override void Bark()
        {
            Console.WriteLine("咕咕"); ;
        }
    }