【Java之路】设计模式之工厂方法

与简单工厂的区别

将实例化过程延后到子类。

代码实现

// Product定义略
abstract class Factory {
    abstract public Product createProduct();

    public void doSomething() {
        Product product = createProduct();
        // Do something with the product.
    }
}

class ConcreteFactory extends Factory {
    public Product createProduct() {
        return new ConcreteProduct();
    }
}

class ConcreteFactory1 extends Factory {
    public Product createProduct() {
        return new ConcreteProduct1();
    }
}

class ConcreteFactory2 extends Factory {
    public Product createProduct() {
        return new ConcreteProduct2();
    }
}

猜你喜欢

转载自www.cnblogs.com/Akatsuki-Sanjou/p/12741552.html
今日推荐