抽象类和抽象方法

来源:互联网 发布:矩阵关联分析法excel 编辑:程序博客网 时间:2024/04/29 19:16

namespace ConsoleApplication5
{
   
   
        abstract class Person//abstract不能省略,因为有抽象方法
        {
            public void eat()//一个一般方法
            {
                Console.WriteLine("person 正在吃");
            }
            public abstract void work();//定义一个抽象类,不能被实例化,直接分号结束
        }
        class Employee : Person
        {
            public override void work()//通过override实现基类的抽象方法
            {
                Console.WriteLine("正在工作");
            }
        }
    class Program
    {
        static void Main(string[] args)
        {
            Employee employee = new Employee();
            employee.eat();
            employee.work();
            Console.Read();
        }
    }
}
//基类中的某个虚拟方法被派生类继承时都要被重写,此时基类中的这个方法根本没有必要实现,
//没有实现的方法就是抽象方法,包含抽象方法的类称为抽象类
//抽象类是派生类的基础,通过不实现或部分实现,这些抽象类用于创建模板,
//以派生出其他类型,如果要将一个类指定为抽象类,则必须使用abstract关键字,、
//派生类如果要实现基类的抽象方法,必须使用override关键字,当然派生类也可以不实现基类的抽象方法