C#虚方法实现多态

C基础算法 cyanprobe 9年前 (2015-11-09) 3210次浏览 已收录 0个评论

C#虚方法实现多态:

多态即程序对不同类型的实例采用不同的处理方法,实现多态的好处有以下:

多态的作用:
1. 应用程序不必为每一个派生类编写功能调用,只需要对抽象基类进行处理即可。大大提高程序的可复用性。//继承
2. 派生类的功能可以被基类的方法或引用变量所调用,这叫向后兼容,可以提高可扩充性和可维护性。 //多态的真正作用,以前需要用switch实现
3.必要条件:
多态的三个必要条件:
1、要有继承(实现implements)
2、要有重写(overWrite&overRide)

代码实现:

virtual
 

namespace @virtual
{
    class Program
    {
        static void Main(string[] args)
        {     employee[] dl = new employee[2];
            dl[0] = new manager("张三");
            dl[1] = new secretary("李怡");
            foreach(employee ds in dl)
            {
                ds.startwork();
            }
        }
    }
    class employee
    { public string name;
       public  employee (string name)
        {
            this.name = name;
        }
        public employee()
        {
        }
         public virtual  void  startwork()
        {
            Console.Write(name + "的工作是:");
        }
    }
    class manager : employee
    {
        public  manager(string name) : base(name)
        {
        }
        public override void startwork()
        {
            base.startwork();
            Console.WriteLine("处理公司主要事物");
        }
    }
    class secretary:employee
    {
        public secretary(string name) : base(name)
        { }
        public override void startwork()
        {
            base.startwork();
            Console.WriteLine("协助经理工作");
        }
    }
}

CyanProbe , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:C#虚方法实现多态
喜欢 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址