zoukankan      html  css  js  c++  java
  • 抽象类

    抽象类(abstract) 是特殊的虚类(virtual)

    当父类的方法不知道如何去实现,可以考虑把父类写成抽象类,讲方法写成抽象方法。

    抽象类可以包括 virtual method(virtual method 有方法体), abstract method(abstract method 没有方法体)

    class Program
        {
            static void Main(string[] args)
            {
                Animal a = new Dog();
                a.Bark();
                Animal b = new Cat();
                b.Bark();
                Console.ReadKey();
            }
        }
    
        public abstract class Animal
        {
            //没有方法体  {} 就是方法体
            public abstract void Bark();
    
            public virtual void Behaviour()
            {
                Console.WriteLine("I can run!");
            }
        }
    
        public class Dog : Animal
        {
            public override void Bark()
            {
                Console.WriteLine("Wang wang");
            }
        }
    
        public class Cat : Animal
        {
            public override void Bark()
            {
                Console.WriteLine("miao miao");
            }
        }

    抽象类主要用作对象系列的基类, 这些对象共享某些主要特性, 例如共享共同的目的和结构.

    接口则主要用于类, 这些类存在根本性的区别, 单仍可以完成某些相同的任务.

    更多抽象类内容请访问

    http://www.cnblogs.com/yubinfeng/p/4559045.html

  • 相关阅读:
    进制转换问题
    奶牛野炊
    BFS
    深搜DFS
    Map容器之热血格斗场
    衣服尺码
    BZOJ2789 [Poi2012]Letters
    BZOJ1098 [POI2007]办公楼biu
    BZOJ1753 [Usaco2005 qua]Who's in the Middle
    BZOJ2442 [Usaco2011 Open]修剪草坪
  • 原文地址:https://www.cnblogs.com/TheMiao/p/9326567.html
Copyright © 2011-2022 走看看