首页 > 其他 > 详细

【设计模式】18.策划者模式

时间:2020-08-22 14:19:02      阅读:75      评论:0      收藏:0      [点我收藏+]

说明:在有多个情况或模式情况,代替掉if-else的写法。需要一个配置,抽象角色和很多具体角色,个人感觉写起来还挺舒服的。

实现:

public abstract class ABS_shuishou
    {
        public abstract void jiaoshui();
    }

    public class geren_shuishou : ABS_shuishou
    {
        public override void jiaoshui()
        {
           //个人交税
        }
    }

    public class qiye_shuishou:ABS_shuishou
    {
        public override void jiaoshui()
        {
            //企业交税
        }
    }

    /// <summary>
    /// 角色设置
    /// </summary>
    public class jueseOption
    {
        private ABS_shuishou ss;
        public jueseOption(ABS_shuishou m)
        {
            ss = m;
        }

        public void jiaoshui()
        {
            ss.jiaoshui();//可以控制到底谁交税?
        }
    }

    public class test
    {
        public void start()
        {
            jueseOption geren = new jueseOption(new geren_shuishou());
            geren.jiaoshui();

            jueseOption qiye = new jueseOption(new qiye_shuishou());
            qiye.jiaoshui();
        }
    }

 

【设计模式】18.策划者模式

原文:https://www.cnblogs.com/laokchen/p/13544113.html

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