zoukankan      html  css  js  c++  java
  • 工厂方法模式

    1.相比于简单工厂模式:简单工厂模式违背了“开封-封闭”原则,如果需要增加“求M数的N次方”,需要修改运算工厂的方法,在Case分支中增加代码。

    工厂方法模式让子类决定实例化哪一个类,子类的上面是一个用于创建对象的接口

    2.UML图:

    image

    image

    image

    3.

    namespace HT.FDBMS.Controls
    {
        #region===================Product===================
        public abstract class BaseDataUpdate
        {
            public virtual void Run()
            { 
            }
        }
        #endregion
    
        #region===============ConcreteProduct===============
        public class DataStore : BaseDataUpdate
        {
            public override void Run()
            { 
                
            }
        }
    
        public class DataVersionManager : BaseDataUpdate
        {
            public override void Run()
            { 
            
            }
        }
        #endregion
    
        #region===================Creator===================
        public interface IBaseDataUpdateFactory
        {
            BaseDataUpdate CreateBaseDataUpdateClass();
        }
        #endregion
    
        #region===============ConcreteCreator===============
        public class DataSotoreFactory : IBaseDataUpdateFactory
        {
            public BaseDataUpdate CreateBaseDataUpdateClass()
            {
                return new DataStore();
            }
        }
    
        public class DataVersionManagerFactroy : IBaseDataUpdateFactory
        {
            public BaseDataUpdate CreateBaseDataUpdateClass()
            {
                return new DataVersionManager();
            }
        }
        #endregion
    }
  • 相关阅读:
    中国地图偏移问题
    from scipy import integrate
    一劳永逸 变与不变
    science_action
    双峰正太分布
    grammar_action
    手动修改key 伪修改内存变量
    yum python mysql
    超越方程
    from multiprocessing import cpu_count
  • 原文地址:https://www.cnblogs.com/ccjcjc/p/3438237.html
Copyright © 2011-2022 走看看