Java23种设计模式之创建型模式「抽象工厂模式」

2020-07-28  本文已影响0人  MrLimLee

抽象工厂模式

创建项目等级的接口

public interface ProductLevel {
    void creatProduct();
}

实现项目等级的接口:高等级和低等级

public class ProductHighLevel implements ProductLevel {

    @Override
    public void creatProduct() {
        System.out.println("创建一个高等级的项目");
    }
}

public class ProductLowLevel implements ProductLevel {

    @Override
    public void creatProduct() {
        System.out.println("创建一个低等级的项目");
    }
}

创建抽象工厂

public abstract class ProductAbstractFactory {

    public abstract ProductLevel creatProduct(String level);
}

继承抽象工厂

public class ProdcutFactory extends ProductAbstractFactory {

    @Override
    public ProductLevel creatProduct(String level) {
        if (level.equals("high")) {
            return new ProductHighLevel();
        } else if (level.equals("low")) {
            return new ProductLowLevel();
        } else {
            return null;
        }

    }
}

测试

ProdcutFactory prodcutFactory = new ProdcutFactory();
ProductLevel high = prodcutFactory.creatProduct("high");
high.creatProduct();

ProductLevel low = prodcutFactory.creatProduct("low");
low.creatProduct();

输出

创建一个高等级的项目
创建一个低等级的项目
上一篇下一篇

猜你喜欢

热点阅读