工厂模式

/*** 所有的车辆需要实现的车辆中心 */
public interface VehicleCenter {String Vehicle();
}
public class ADVehicle implements VehicleCenter {@Overridepublic String Vehicle() {return "喜提奥迪车辆";}
}

public class BCVehicle implements VehicleCenter {@Overridepublic String Vehicle() {return "喜提奔驰车辆";}
}
public class BMVehicle implements VehicleCenter {@Overridepublic String Vehicle() {return "喜提宝马车辆";}}

定义一个工厂方法

/*** 车辆工厂*/
public class VehicleFactory {public VehicleCenter getVehicle(String type) {if (type == null) {return null;}if ("AD".equals(type)) {return new ADVehicle();} else if ("BC".equals(type)) {return new BCVehicle();} else if ("BM".equals(type)) {return new BMVehicle();}return null;}}

测试类


public class TextVehicle {public static void main(String[] args) {VehicleFactory factory = new VehicleFactory();//买一辆奥迪车VehicleCenter vehicle = factory.getVehicle("AD");System.out.println(vehicle.Vehicle());}
}

输出:
喜提奥迪车辆
Process finished with exit code 0
工厂方法 优点:扩展性高 缺点:增加一个车辆就会增加一个类和实现工厂

GOF设计模式——工厂模式相关推荐

  1. java设计模式工厂模式_Java中的桥梁设计模式

    java设计模式工厂模式 Today we will look into Bridge Design Pattern in java. When we have interface hierarchi ...

  2. java设计模式工厂模式_Java中的外观设计模式

    java设计模式工厂模式 Facade Design Pattern is one of the Structural design patterns (such as Adapter pattern ...

  3. Java设计模式-工厂模式(3)抽象工厂模式

    在Java设计模式-工厂模式(2)工厂方法模式 我们知道了工厂方法模式解决了简单工厂模式中的缺陷,做到了满足开闭原则,但是时代是进步的,进而又产生新的问题,工厂难道只能生产一种东西吗.我们所见到的工厂 ...

  4. Java设计模式-工厂模式(2)工厂方法模式

    在Java设计模式-工厂模式(1)简单工厂模式 中我们介绍了简单工厂模式,提到了简单工厂模式违背了开闭原则,而"工厂方法模式"是对简单工厂模式的进一步抽象化,其好处是可以使系统在不 ...

  5. Java设计模式-工厂模式(1)简单工厂模式

    Java设计模式-工厂模式(1)简单工厂模式 一.前言 1)例子 2)类图关系 3)代码实现 二.简单工厂模式 2.1.概述: 2.2.类图关系: 2.3.代码修改: 2.4.优缺点 2.5.扩展-简 ...

  6. 设计模式---工厂模式

    设计模式---工厂模式 工厂方法模式 概述:工厂方法模式中抽象工厂负责定义创建对象的接口,具体创建工作由继承抽象工厂的具体类实现. 优点:客户端不需要再负责对象的创建,从而明确了各个类的职责,如果有新 ...

  7. java设计模式工厂模式_Java中的工厂设计模式

    java设计模式工厂模式 Welcome to the Factory Design Pattern in Java tutorial. Factory Pattern is one of the C ...

  8. java设计模式工厂模式_Java中的复合设计模式

    java设计模式工厂模式 Composite pattern is one of the Structural design pattern. Composite design pattern is ...

  9. 设计模式-工厂模式(学习)

    设计模式-工厂模式(学习) 在程序的世界里,就像射雕英雄传一样,我们的技能就像是武功一样,我们只有不断去学习练习才能有机会像郭靖一样成为"天下第一". 我认为技能和武功是很类似的, ...

  10. 设计模式-工厂模式的3中不同实现[JAVA]

    设计模式-工厂模式的3中不同实现[JAVA] 工厂模式简介 In Factory pattern, we create object without exposing the creation log ...

最新文章

  1. 拿到淘宝offer后的胡思乱想plus面试总结
  2. JavaScript实现Knapsack problem背包问题算法(附完整源码)
  3. java poi exce 移动_JAVA使用POI操作excel
  4. mac android 证书生成工具,MAC系统下,生成安卓证书的命令
  5. python脚本 pyqt 打包成windows可执行exe文件 pyinstaller
  6. 传统红色纹样图案背景|中式海报必备素材
  7. eclipse-阶段四-Server Tomcat v8.5 Server at localhost failed to start.
  8. shell win10 改成cmd_win10系统必做优化,让你的电脑告别卡顿,运行速度至少提升20%...
  9. 在字符串中找出第一个只出现一次的字符,Python实现
  10. python continue和break同时用_Python学习笔记之Break和Continue用法分析
  11. IEEE论文投稿模板大全
  12. 2022年6月25日PMP考试通关宝典-4
  13. 第四章 爬取西刺免费代理ip 并应用到scrapy
  14. GPS数据格式的分析与处理
  15. html中form表单提交中文乱码问题基本解决办法
  16. 训练好的word2vec模型(中文词向量)
  17. 二十四节气之夏至养生篇
  18. 中南大学湘雅医院冯嵩:业财融合一体化信息平台的建设
  19. yar php使用,php的轻量级rpc框架yar
  20. 科研工具--论文-作者-影响力等-精准制导-检索网站

热门文章

  1. BT没死!305个国外BT资源聚合站点大全
  2. 你知道如何提升JSON.stringify()的性能吗?
  3. 记录数据库面试题及答案21~41
  4. Android NFC标签读写 配置 过滤器总结 各类NFC数据类型NfcA NfcB IsoDep MifareClassic读取
  5. MySQL数据库建立数据库和表(命令行方式)
  6. js国内普通车牌正则验证
  7. 亲测:真正免费的音频转文字软件
  8. 想要在工作中脱颖而出?这几款优秀的PC软件能够帮你
  9. sybase常用sql语句
  10. 基于WF4的新平台-流程格式转换架构