Java设计模式之简单工厂模式
2021/8/12 17:06:15
本文主要是介绍Java设计模式之简单工厂模式,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
简单工厂的优点:
- 把具体产品的类型从客户端代码中解耦处理。
- 服务器端,如果修改了具体产品的类名,客户端也不知道(将Rise的类名改为Rise2 客户端的代码不需要修改)符合"面向接口编程"的思想。
简单工厂的缺点:
- 如果具体产品特别多,则简单工厂就会变得十分臃肿。比如有100个具体产品,则需要写100个case。
- 最重要的是不符合ocp原则(开闭原则),客户端需要拓展具体产品时,要修改简单工厂的代码。
package com.fjh.factory.simplefactory; interface Food{ void eat(); } class Hamburger implements Food{ @Override public void eat() { System.out.println("制造汉堡"); } } class Rise implements Food{ @Override public void eat() { System.out.println("制造饭"); } } class FoodFactory{ public static Food productFood(int i){ Food food = null; switch (i){ case 1: food = new Hamburger(); break; case 2: food = new Rise(); break; default: break; } return food; } } public class SimpleFactoryTest { public static void main(String[] args){ Food food = FoodFactory.productFood(2);//可以将产品与对应编号写成枚举类。 food.eat(); } }
这篇关于Java设计模式之简单工厂模式的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-10-06小米11i印度快充版ROM合集:极致体验,超越期待
- 2024-10-06【ROM下载】小米11i 5G 印度版系统, 疾速跃迁,定义新速度
- 2024-10-06【ROM下载】小米 11 青春活力版,青春无极限,活力全开
- 2024-10-05小米13T Pro系统合集:性能与摄影的极致融合,值得你升级的系统ROM
- 2024-10-01基于Python+Vue开发的医院门诊预约挂号系统
- 2024-10-01基于Python+Vue开发的旅游景区管理系统
- 2024-10-01RestfulAPI入门指南:打造简单易懂的API接口
- 2024-10-01初学者指南:了解和使用Server Action
- 2024-10-01Server Component入门指南:搭建与配置详解
- 2024-10-01React 中使用 useRequest 实现数据请求