首页 > Windows开发 > 详细

练习:C# -- 多态

时间:2016-06-19 18:16:38      阅读:352      评论:0      收藏:0      [点我收藏+]
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace 多态
{
    class Program
    {
        static void Main(string[] args)
        {
            /*
             练习:
             真的鸭子嘎嘎叫
             木头鸭子吱吱叫
             橡胶鸭子唧唧叫
             */
            RealDark rrd = new RealDark();
            WoodenDark wd = new WoodenDark();
            RubberDark rd = new RubberDark();

            Dark[] d = { rrd, wd, rd };
            for (int i = 0; i < d.Length; i++)
            {
                d[i].Bark();
            }
            Console.ReadLine();
        技术分享

            /*
             练习:
             经理10点打卡
             员工9点打卡
             程序员不打卡
             */
            Employee em = new Employee();
            Manager ma = new Manager();
            Programmer pr = new Programmer();
            Employee[] ee = { em, ma, pr };
            for (int i = 0; i < ee.Length; i++)
            {
                ee[i].daka();
            }
            Console.ReadLine();
        技术分享
        }
    }
}
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace 多态
{

    public class Dark
    {
        public virtual void Bark()
        {
            Console.WriteLine("我是鸭子");
        }
    }

    public class RealDark : Dark
    {
        public override void Bark()
        {
            Console.WriteLine("真的鸭子嘎嘎叫~");
        }
    }

    public class WoodenDark : Dark
    {
        public override void Bark()
        {
            Console.WriteLine("木头鸭子吱吱叫~");
        }
    }

    public class RubberDark : Dark
    {
        public override void Bark()
        {
            Console.WriteLine("橡胶鸭子唧唧叫~");
        }
    }



    public class Employee
    {
        public virtual void daka()
        {
            Console.WriteLine("员工9点打卡");
        }
    }

    public class Manager : Employee
    {
        public override void daka()
        {
            Console.WriteLine("经理10点打卡");
        }
    }

    public class Programmer : Employee
    {
        public override void daka()
        {
            Console.WriteLine("程序员不打卡");
        }
    }

}

 

练习:C# -- 多态

原文:http://www.cnblogs.com/xiao55/p/5598397.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!