Java设计模式-简单工厂模式

164 阅读1分钟

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

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

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 日志工厂