java 23种设计模式之简单工厂模式

       开发中,有的类结构过于复杂,实例化起来需要考虑很多东西,如果每个使用到该类的地方都进行一次复杂的实例化操作,这样就很容易会出现问题。在这种情况下,我们可以专门编写一个类,这个类的主要工作就是通过简单的参数完成复杂的类实例化。

       比如我们要实例化一个苹果手机对象,通常我们会这样做

IPhone iphone = new IPhone7();

       但是实际上IPhone7这个类远不是这么简单就可以实例化成功的。

       这里我们就可以编写一个简单工厂类,对苹果手机的实例化作封装。

       

public class IPhoneFactory {
    
    public static IPhone  getIPhone(int version){
        switch (version){
            case 5:
                return new IPhone5();
            case 6:
                return new IPhone6();
            case 7:
                return new IPhone7();
                default:
                    return null;
        }
    }
}

   这样我们在需要实例化一个苹果手机对象时,就只需要通过IPhoneFactory.getIPhone(version);就可以获得自己想要的苹果手机对象了。

   这里通过非常简单的方式解释了简单工厂模式,在实际的项目中简单工厂模式也得到了非常广泛的应用

   这里我们就拿mybatis源码来说

  LogFactory  日志工厂

      java 23种设计模式之简单工厂模式_第1张图片

     java 23种设计模式之简单工厂模式_第2张图片

 

你可能感兴趣的:(java设计模式,java,设计模式,简单工厂,工厂)