抽象类

抽象类(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

posted @ 2018-07-17 23:03  TheMiao  阅读(221)  评论(0编辑  收藏  举报