抽象工厂模式

来源:互联网 发布:人工智能战机 编辑:程序博客网 时间:2024/06/01 09:25
// 抽象工厂模式// 有多个抽象子产品接口,每个抽象子产品接口都可以扩展多个具体子产品类的实现// 一个抽象工厂接口,可以扩展多个具体工厂类的实现,且每个具体工厂类能够创建多个具体子产品类的实例// 若一个产品由若干子产品组成,那一个具体工厂要形成可使用的具体产品,就必须通过生产多个具体子产品来实现// 抽象子产品接口public interface Engine {}public interface Aircondition {}// 具体子产品类public class EngineA implements Engine {}public class EngineB implements Engine {}public class AirconditionA implements Aircondition {}public class AirconditionB implements Aircondition {}// 抽象工厂接口,面向抽象子产品接口编程public interface Factory {    public Engine createEngine();    public Aircondition createAircondition();}// 具体工厂类,面向具体子产品编程public class FactoryBMW320 implements Factory {    public Engine createEngine() {        return new EngineA();    }    public Aircondition createAircondition() {        return new AirconditionA();    }}public class FactoryBMW523 implements Factory {    public Engine createEngine() {        return new EngineB();    }    public Aircondition createAircondition() {        return new AirconditionB();    }}// 产品使用者类,面向抽象子产品接口和抽象工厂接口编程public class User {    public void use(String str) {        Factory factory = getResource().getXML(XML路径).getBean(str);        Engine engine = factory.createEngine();        Aircondition aircondition  = factory.createAircondition();    }}
0 0
原创粉丝点击