杜撰23种设计模式--工厂方法模式

简单工厂的最大优点是在工厂类中完成了必要的逻辑判断,根据客户端的条件动态实例化相关的类即可。

但是缺点也在这里,如果我要添加一个case选择,就需要修改原有的类,等于说对扩展开发了的同时也对修改开放了,违反了开放封闭原则。

工厂方法模式,通过抽象工厂的选择,定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法使一个类的实力护延迟到其子类。

也就是本来添加一个case选择的修改从改工厂类,延迟到了修改客户端。

 水果接口,水果工厂

 

苹果,苹果工厂。 梨子类似

 

在客户端代码中,我们先创建具体的工厂,然后调用getFurit方法获取具体的水果,在调用吃的方法。

 

posted @   NobodyHero  阅读(6)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
· 零经验选手,Compose 一天开发一款小游戏!
历史上的今天:
2022-10-23 代码随想录Day8
点击右上角即可分享
微信分享提示