简单工厂笔记——创建型

2020-05-20  本文已影响0人  摘星马里奥

简单工厂 simplefactory

工厂类负责创建的对象比较少

客户端(应用层)只知道传入工厂类的参数,对于如何创建对象(逻辑)不关心

优点:只需要传入一个正确的参数,就可以获取你索尼所需要的对象,而无须知道其创建细节

工厂类的职责相对过重,增加新的产品,需要修改工厂类的判断逻辑,违背开闭原则

例子一:java.util.Calendar

public static Calendar getInstance(){

    ...

    Calendar cal = createCalendar(TImeZone.getDefaultRef(), Locale.getDefault(Locale.Category.FORMAT));

    ...

}

private static Calendar createCalendar(TimeZone zone, Locale aLocale){

    if(){

    }else if(){

    }else{

    }

}

createCalendar方法使用的简单工厂模式

例子二:logback

        org.slf4j.LoggerFactory

    public static Logger getLogger(Class clazz);

   

    public final Logger getLogger(final String name){

        ILoggerFactory iLoggerFactory = getILoggerFactory();

        return iLoggerFactory.getLogger(name);

    }

   

ILoggerFactory的实现类使用了简单工厂模式

上一篇下一篇

猜你喜欢

热点阅读