抽象工厂模式

/**
 * @author 抽象工厂需要完成的产品定义
 */
public  abstract class AbstractFactory {

    public abstract Car newCar();

    public  abstract  Phone newPhone();

}
/**
 * 定义产品接口类 由具体实现去完成对应的产品实现
 */
public interface Car {

    public void printName();
}


/**
 * 具体工厂实现类
 */
public class AodiFactory extends AbstractFactory {
    @Override
    public Car newCar() {
        return new Aodi();
    }

    @Override
    public Phone newPhone() {
        return new Huawei();
    }
}

//具体产品实现
public class Aodi implements Car {

@Override
public void printName() {
System.out.println("aodi");
}
}
 
 抽象工厂类测试
定义抽象工厂 需要生产的产品
定义产品接口 由具体产品实现去完成对应的产品实现
定义具体的工厂去实现抽象工厂类。具备某种产品的生产能力
具体工厂去调用具体产品实现类 ,完成产品实现。
posted @ 2020-04-17 11:03  liuxw666  阅读(118)  评论(0编辑  收藏  举报