
设计模式之一简单工厂模式
发布日期:2021-05-07 00:04:38
浏览次数:11
分类:技术文章
本文共 1468 字,大约阅读时间需要 4 分钟。
提纲
- 简单工厂
- 工厂模式
- 抽象工厂
细节
情景: 奥迪车 只能生产奥迪,生产不了冰淇凌 我想都生产
简单工厂 :我有一个很牛的工厂,什么都会生产,你给我什么 我就生产什么 落地:package com.mcd.test.test;// 1 公共接口abstract class Product{ public abstract void Show();}class ProductA extends Product{ @Override public void Show() { System.out.println("A"); }}class ProductB extends Product{ @Override public void Show() { System.out.println("B"); }}class ProductC extends Product{ @Override public void Show() { System.out.println("C"); }}//2 工厂生产过程class Factory { public static Product Manufacture(String ProductName){ switch (ProductName){ case "A": return new ProductA(); case "B": return new ProductB(); case "C": return new ProductC(); default: return null; } }}//3实际应用 public static void main(String[] args){ Factory mFactory = new Factory(); try { mFactory.Manufacture("A").Show(); //客户要产品B mFactory.Manufacture("B").Show(); //客户要产品C mFactory.Manufacture("C").Show(); //客户要产品D mFactory.Manufacture("D").Show(); }catch (NullPointerException e){ System.out.println("没有这一类产品"); } }
总结
一般工厂就这样
- 1 写公共接口
- 2 写实现类
- 3 写工厂制造方法
- 4 写应用 缺点: 一旦这个工厂不能正常工作,整个系统都会受到影响;一旦添加新产品就不得不修改工厂类的逻辑。 应用场景:(1)工厂类负责创建的对象比较少,由于创建的对象较少,不会造成工厂方法中的业务逻辑太过复杂。(2)客户端只知道传入工厂类的参数,对于如何创建对象并不关心。
发表评论
最新留言
留言是一种美德,欢迎回访!
[***.207.175.100]2025年04月06日 08时04分28秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
抢滩抖音、B站,快手港股IPO进程加速
2019-03-03
Linux中的虚拟内存机制和内存映射
2019-03-03
Android系统启动系列5 SystemServer进程下
2019-03-03
Android四大组件系列9 ContentProvider原理
2019-03-03
理解PendingIntent
2019-03-03
Android SurfaceFlinger4 提交Buffer
2019-03-03
深入理解 ClientLifecycleManager 机制
2019-03-03
android基础知识回顾--ContentProvider简单用法
2019-03-03
压缩解压
2019-03-03
js try{}catch(){}finally{}语句
2019-03-03
R3 PRO 3200G和r7 3700u 哪个好
2019-03-03
入手评测 联想小新Pro14和Air14Plus哪个好?区别对比
2019-03-03
程序人生:没有伞的孩子要学会奔跑
2019-03-03
Express Animate for mac(动画特效制作软件)
2019-03-03
macOS Big Sur系统中如何开启设置触控板三指拖拽功能?
2019-03-03
修复苹果Mac中的快速视频播放错误的方法
2019-03-03
苹果HomePod智能音箱怎么使用广播功能?
2019-03-03