美文网首页
工厂方法模式

工厂方法模式

作者: Gray_s | 来源:发表于2021-03-30 00:20 被阅读0次

    定义

    定义一个用于创建对象的接口,让子类决定实例化哪个类。

    使用场景

    在任何需要生成复杂对象的地方,都可以使用工厂方法模式。复杂对象适合使用工厂模式,用new就可以完成创建的对象无需使用工厂模式。

    UML图

    UML

    由图可知,主要分为4大模块,一是抽象工厂,是工厂方法模式的核心;二是具体工厂,实现了具体的业务逻辑;三是抽象产品,是工厂方法模式所创建的产品的父类;四是具体产品,为实现抽象产品的某个具体产品对象。

    代码实现

    interface Factory {
        Product createProduct();
    }
    
    class AFactory implements Factory {
    
        @Override
        public Product createProduct() {
            return new AProduct();1
        }
    }
    

    工厂类

    interface Product {
    
        void use();
    }
    
    class AProduct implements Product {
    
        @Override
        public void use() {
            System.out.println("使用A");
        }
    }
    

    产品类

    优势

    用户不需要关心产品是用方法的具体实现,只需要使用对应的工厂类进行创建即可。产品的使用方法接口进行统一,拥有两良好的扩展性,实现了面向接口编程。

    相关文章

      网友评论

          本文标题:工厂方法模式

          本文链接:https://www.haomeiwen.com/subject/ivwodxtx.html