工厂方法模式3(5)

允我心安 提交于 2019-11-28 17:58:52

简单理解:有个工厂对象,工厂对象可以创建多种类型的产品对象。

 

package Creating;

public class FactoryMain {

    public static void main(String[] args) {
        ProductA pA = (ProductA) new FactoryA().newProduct();
        pA.showProduct();
        ProductB pB = (ProductB) new FactoryB().newProduct();
        pB.showProduct();
    }

}


interface Factory{
    public Product newProduct();
}

interface Product{
    public void showProduct();
}


class ProductA implements Product{

    @Override
    public void showProduct() {
        System.out.println("生产了A产品!");
    }
}

class ProductB implements Product{

    @Override
    public void showProduct() {
        System.out.println("生产了B产品!");
    }
}

class FactoryA implements Factory{

    @Override
    public Product newProduct() {
        return new ProductA();
    }
}

class FactoryB implements Factory{

    @Override
    public Product newProduct() {
        return new ProductB();
    }
}

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!