抽象类

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace 抽象类
{
    class Nan : Ren
    {
        public override void chifan()
        {
            Console.WriteLine("我是男人,我大口吃饭!");
        }

        public override void xihuanchi()
        {
            Console.WriteLine("我是男人,我喜欢吃肉!");
        }

    }
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace 抽象类
{
    abstract class Ren
    {
        public virtual void chifan()
        {
            Console.WriteLine("用嘴吃饭!");
        }

        public abstract void xihuanchi();

    }
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace 抽象类
{
    class Program
    {
        static void Main(string[] args)
        {
            Nan n = new Nan();
            n.chifan();
            n.xihuanchi();

            Ren r = new Nan();
            r.xihuanchi();



            Console.ReadKey();
        }
    }
}

抽象类:abstract
就是用来被继承的,不能实例化对象,因为没有构造函数;
抽象方法,不能有方法的主体,只能定义方法的结构;

抽象方法或抽象属性,只能存在于抽象类中;
抽象类中不一定只有抽象方法和抽象属性;

原文地址:https://www.cnblogs.com/zhangdemin/p/5604054.html