工厂方法模式 Factory Method

描述:一个具体工厂负责生产一种产品

角色:

抽象产品(Product):具体产品的父类,描述具体产品的公共接口

具体产品(Concrete Product):描述生产的具体产品

抽象工厂(Creator):具体工厂的父类,描述具体工厂的公共接口

具体工厂(Concrete Creator):实现工厂方法创建产品的实例

//抽象工厂类
abstract class Factory{
    public abstract Product Manufacture();
}
//抽象产品类
abstract class Product{
    public abstract void Show();
}
//具体产品类
//具体产品A类
class ProductA extends Product{
    @Override
    public void Show() {
        System.out.println("生产出了产品A");
    }
}
//具体产品B类
class ProductB extends Product{
    @Override
    public void Show() {
        System.out.println("生产出了产品B");
    }
}
//具体工厂类
//工厂A类 - 生产A类产品
class FactoryA extends Factory{
    @Override
    public Product Manufacture() {
        return new ProductA();
    }
}
//工厂B类 - 生产B类产品
class FactoryB extends Factory{
    @Override
    public Product Manufacture() {
        return new ProductB();
    }
}
发布了86 篇原创文章 · 获赞 0 · 访问量 4063

猜你喜欢

转载自blog.csdn.net/qq_31965925/article/details/105668980