当前位置: 首页 > news >正文

哪有做外单的图片素材网站东莞网站搭建

哪有做外单的图片素材网站,东莞网站搭建,大连个人网站建设,建设部网站中淼工程有限公司文章目录 1. 概念2. 实际的应用 1. 概念 FactoryMethod 模式是设计模式中应用最为广泛的模式#xff0c;在面向对象的编程中#xff0c;对象的创建工作非常简单#xff0c;对象的创建时机却很重要。 FactoryMethod 解决的就是这个问题#xff0c;它通过面向对象的手法… 文章目录 1. 概念2. 实际的应用 1. 概念 FactoryMethod 模式是设计模式中应用最为广泛的模式在面向对象的编程中对象的创建工作非常简单对象的创建时机却很重要。 FactoryMethod 解决的就是这个问题它通过面向对象的手法将所要创建的具体对象的创建工作延迟到了子类从而提供了一种扩展的策略较好的解决了这种紧耦合的关系。 听不懂是吧下面直接举例说明 2. 实际的应用 注图中原作者出现笔误BMW错拼成了BWM 上图中①是BMW的产品接口②是产品工厂的接口。 代码实现 1开发人员A的工作 接口BMW.java package day09; /*** 宝马车的产品接口* author 14532**/ public interface BMW {//产品的信息介绍//车的发动方式void showInfo(); }/*** 构建具体的车的类* author 14532**/ class BMW3 implements BMW{Overridepublic void showInfo() {System.out.println(这个是宝马3系车);} }class BMW5 implements BMW{Overridepublic void showInfo() {System.out.println(这个是宝马5系车); } }class BMW7 implements BMW{Overridepublic void showInfo() {System.out.println(这个是宝马7系车); } }接口BMWFactory.java package day09; /*** 汽车生产工厂接口* author 14532**/ public interface BMWFactory {BMW productBMW(); }/*** 实现具体的车型的生产工厂* author 14532**/ class BMW3Factory implements BMWFactory{Overridepublic BMW productBMW() {System.out.println(生产宝马3系车);return new BMW3();} }class BMW5Factory implements BMWFactory{Overridepublic BMW productBMW() {System.out.println(生产宝马5系车);return new BMW5();} }class BMW7Factory implements BMWFactory{Overridepublic BMW productBMW() {System.out.println(生产宝马7系车);return new BMW7();} }2开发人员B的工作 Test.java package day09;public class Test2 {public static void main(String[] args) {//这是开发人员B的工作BMW b3 new BMW3Factory().productBMW();b3.showInfo();BMW b5 new BMW5Factory().productBMW();b5.showInfo();BMW b7 new BMW7Factory().productBMW();b7.showInfo();}}运行结果 如果现在需要对宝马3系的车进行改造改成宝马3i该如何实现 BMW.java中class BMW3 implements BMW{改成class BMW3i implements BMW{ BMWFactory.java中return new BMW3();改成return new BMW3i(); 为了区别改造的在类BMW3Factory中添加一段输出System.out.println(改造3系车定名为BMW3i型号); 更改后的代码 1开发人员A的工作产生了变化 接口BMW.java package day09; /*** 宝马车的产品接口* author 14532**/ public interface BMW {//产品的信息介绍//车的发动方式void showInfo(); }/*** 构建具体的车的类* author 14532**/ class BMW3i implements BMW{//更改为BMW3iOverridepublic void showInfo() {System.out.println(这个是宝马3系车);} }class BMW5 implements BMW{Overridepublic void showInfo() {System.out.println(这个是宝马5系车);} }class BMW7 implements BMW{Overridepublic void showInfo() {System.out.println(这个是宝马7系车);} } 接口BMWFactory.java package day09; /*** 汽车生产工厂接口* author 14532**/ public interface BMWFactory {BMW productBMW(); }/*** 实现具体的车型的生产工厂* author 14532**/ class BMW3Factory implements BMWFactory{//在BMW3Factory中改造BMW3为BMW3iOverridepublic BMW productBMW() {System.out.println(生产宝马3系车);System.out.println(改造3系车定名为BMW3i型号);return new BMW3i();//返回BMW3i}}class BMW5Factory implements BMWFactory{Overridepublic BMW productBMW() {System.out.println(生产宝马5系车);return new BMW5();}}class BMW7Factory implements BMWFactory{Overridepublic BMW productBMW() {System.out.println(生产宝马7系车);return new BMW7();}} 2开发人员B的工作没有变化 Test.java package day09;public class Test2 {public static void main(String[] args) {//这是开发人员B的工作BMW b3 new BMW3Factory().productBMW();b3.showInfo();BMW b5 new BMW5Factory().productBMW();b5.showInfo();BMW b7 new BMW7Factory().productBMW();b7.showInfo();}}输出结果 通过工厂把new对象给隔离通过产品的接口可以接收不同实际产品的实现类。实现的类名的改变不影响其他合作开发人员的编程。
http://www.yutouwan.com/news/191030/

相关文章:

  • 做外汇的网站wordpress本地做好了怎么备份
  • 装修平台网站建设云南省建设厅网站处长
  • 网站群建设讲话wordpress 手机看不了视频
  • wordpress 导航站点网线制作公开课
  • 设计型网站自带优化wordpress分页目录
  • 寿光网站建设优化重庆网站制作天
  • 沧州市网站建设电话长沙楼市最新消息
  • 织梦网站404页面模板wordpress 邮件代码
  • wordpress 说说页面网页关键词优化
  • 利用vs做网站百度官方认证
  • 山西省网站备案wordpress 栏目列表页
  • 郑州做网站公wordpress中文变英文版
  • 手机网站 标题长度对于网站开发有什么要求
  • 网站设计的五大要素外地人在海南注册公司
  • 中国智慧城市建设门户网站怎么建立一个公众号
  • 网站设计实训心得体会注册网站给谁交钱
  • 秦皇岛网站建设费用网站的内连接如何做
  • 公司网站建设开源平台必要是什么网站
  • 做两个阿里网站网站开发工作介绍
  • 大连网站建设1000元优秀网页设计
  • 杭州 网站建设广州短视频推广
  • 大连手机自适应网站建设服务网站建设仪器配置表
  • 网站开发建设的步骤做静态网站的步骤
  • 网站品牌建设方案嘉兴建设规划网站
  • php图书管理系统网站开发企业网站制作公司有哪些
  • 青岛做网站方案南昌网站seo多少钱
  • 做网站协议书新手学做网站要多久
  • 国内 响应式网站yole市场调研公司
  • 模板网站五金wordpress怎么清缓存
  • 合肥建设银行招聘网站长沙建设信息中心网站