美文网首页C#iOS进阶高级
C#高级进阶-[抽象类]方法

C#高级进阶-[抽象类]方法

作者: xzhuan | 来源:发表于2018-03-13 22:47 被阅读4次

    Aitin原创稿件,转载请注明出处!

    C#语法进阶 <抽象类>方法
    /*
    *  OOP多态
    *   1.抽象类abstract
    *      特点:
    *          1.1 可以被继承/重写,不能创建对象[实例化]
    *          1.2 可能包含抽象成员[方法,属性]
    *          1.3 抽象类概念:     表示一个抽象概念,所拥有的共性 行为数据
    *                 1.3.1 常常用于做基类,统一所有子类,管理子类
    *          1.4 抽象方法概念:  只表示做什么,拥有什么数据,不表达具体做法,不表达数据具体取值
    *                 1.4.1 实现类必须实现所有的抽象方法,必须加 abstract 不能私有
    *                 1.4.2 实现类抽象方法的方法,必须加override 不能私有
    *                 1.4.3 抽象方法 必须放在抽象类中 / 接口中         
    */
    
    namespace LearnDemo20180304
    {
       class Program
       {
           static void Main(string[] args)
           {
               //Animal ani0 = null;
               //ani0 = new Dog();
               Animal ani1 = new Dog();
    
               Animal[] arr0 = new Animal[3];
               arr0[0] = new Dog();
               arr0[1] = new Cat();
               foreach (Animal item in arr0)
               {
                   item.Call();
               }
           }
       }
       //定义端
       abstract class Animal  //动物 <抽象基类>
       {
           int id;
           string name;
           virtual public void Run()  //虚方法
           {
    
           }
           virtual public void Call()
           {
           }
       }
       class Dog : Animal  //狗  <子类>
       {
           override public void Call()
           {
               Console.WriteLine("汪汪 !");
           }
       }
       class Cat : Animal  //猫  <子类>
       {
           override public void Call()
           {
               Console.WriteLine("喵喵 !");
           }
       }
    }
    

    相关文章

      网友评论

        本文标题:C#高级进阶-[抽象类]方法

        本文链接:https://www.haomeiwen.com/subject/ihtafftx.html