设计模式之工厂方法模式

工厂方法模式

  1. 工厂方法模式结构图

工厂方法模式结构图

  1. 示例代码:

    public interface Product {
        void doSomething();
    }
    
    public class ProductA implements Product{
        @Override
        public void doSomething() {
            System.out.println("这是产品A!");
        }
    }
    
    public class ProductB implements Product{
        @Override
        public void doSomething() {
            System.out.println("这是产品B!");
        }
    }
    
    public interface Factory {
    
        Product makeProduct();
    }
    
    public class FactoryA implements Factory{
        @Override
        public Product makeProduct() {
            return new ProductA();
        }
    }
    
    public class FactoryB implements Factory{
        @Override
        public Product makeProduct() {
            return new ProductB();
        }
    }
    
    public class FactoryMethodTest {
    
        public static void main(String[] args) {
            FactoryA factory = new FactoryA();
            Product product = factory.makeProduct();
            product.doSomething();
        }
    }
    

    3.总结:

    优点:灵活性强,新增产品只需添加相应工厂即可,解偶框架,符合迪米特法则,依赖倒置原则和里氏替换原则.

    缺点:类增多,增加复杂度,增加了系统的抽象性和理解难度.

posted @   justKen  阅读(37)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具
· Manus的开源复刻OpenManus初探
点击右上角即可分享
微信分享提示