工厂模式

181 阅读1分钟

工厂模式的好处?

  • 1 工厂方法封装了对象创建的细节,将对象创建代码和其他部分脱离,减少相干性.
  • 2 有利于同类对象创建的统一管理和控制
  • 3 你所关心的仅仅是工厂方法返回的接口方法,不必关心实现细节

工厂模式

简单工厂模式

定义一个工厂类,根据传入的参数不同返回不同的实例,被创建的实例具有共同的父类或者接口。

工厂方法模式

工厂方法模式是简单工厂的进一步深化,在工厂方法模式中,我们不在提供一个统一的工厂类来创建所有的对象,而是根据不同的对象提供不同的工厂。也就是说每个对象都有一个与之对应的工厂。 应用: AsyncTask 中就有应用

private static final ThreadFactory sThreadFactory = new ThreadFactory() {
        private final AtomicInteger mCount = new AtomicInteger(1);

        public Thread newThread(Runnable r) {
            return new Thread(r, "AsyncTask #" + mCount.getAndIncrement());
        }
    };

抽象工厂模式

抽象工厂模式是工厂方法的进一步深化,在这个模式中的工厂类不单单可以创建一个对象,而是可以创建一组对象