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

义乌网站制作是什么怎么描述网站主页做的好

义乌网站制作是什么,怎么描述网站主页做的好,上百度推广 免费做网站,贵阳网站建设公司招聘工厂方法模式概述 工厂方法模式#xff0c;是对简单工厂模式的进一步抽象和推广。以我个人理解#xff0c;工厂方法模式就是对生产工厂的抽象#xff0c;就是用一个生产工厂的工厂来进行目标对象的创建。 工厂方法模式的角色组成和简单工厂方法相比#xff0c;创建了一个…工厂方法模式概述 工厂方法模式是对简单工厂模式的进一步抽象和推广。以我个人理解工厂方法模式就是对生产工厂的抽象就是用一个生产工厂的工厂来进行目标对象的创建。 工厂方法模式的角色组成和简单工厂方法相比创建了一个工厂的接口生产相应的产品的工厂类都要实现此接口然后多了一个用来创建对应工厂类对象的总工厂类真正业务调用的就是这个总工厂类这个总工厂类可以理解为用来创建工厂类的工厂类。 以上创建了一个工厂的接口所有的用来生产目标产品的工厂都要实现这个接口说明这是目标产品们不是只由一个工厂生产的可能由多个工厂分开分别生产即由多个简单工厂组成为何要如此呢见下文解释。 代码实现 为了更好的与简单工厂模式进行对比直接引入简单工厂模式的博客的例子见博客 设计模式简单工厂模式-CSDN博客 若这个餐馆的原先的那个厨师不会烹饪羊肉和牛肉要新招一个会烹饪牛肉和羊肉的厨师。 工厂接口 两个厨师都要实现指定的工厂的接口可以说他们都是生产菜品的工厂。 public interface Factory {Cooking createCooking(String type); } 厨师要实现对应的创造菜品的方法 工厂类 原先的工厂类 public class CookingFactory implements Factory {public Cooking createCooking(String type){Cooking cooking null;switch (type){case 鱼:cooking new CookingFish();break;case 土豆:cooking new CookingPotato();break;case 鸡肉:cooking new CookingChicken();break;}return cooking;} } 原来的工厂类要做一些修改让其实现工厂接口并且那个生产菜品的方法不用设置为静态方法因为这个方法不是直接由业务代码调用的业务代码调用的是总工厂类的方法。 新的工厂类 public class CookingFactory2 implements Factory {public Cooking createCooking(String type){Cooking cooking null;switch (type){case 羊肉:cooking new CookingMutton();break;case 牛肉:cooking new CookingBeef();break;}return cooking;} } 新的工厂类和原来的工厂类的逻辑是一样的只是所生产的菜品不一样。 public class GetCooking {public static Cooking createFactory(String type) throws Exception {Factory factory null;Cooking cooking null;switch (type){case 鱼:case 土豆:case 鸡肉:factory new CookingFactory();break;case 牛肉:case 羊肉:factory new CookingFactory2();break;default:factory null;break;}if (factory null) {throw new Exception(菜品不存在);}cooking factory.createCooking(type);return cooking;} } 总工厂类 总工厂类有点像用来创建工厂类的工厂最后将菜品的类型代入目标工厂类获得目标菜品。 public class GetCooking {public static Cooking createFactory(String type) throws Exception {Factory factory null;Cooking cooking null;switch (type){case 鱼:case 土豆:case 鸡肉:factory new CookingFactory();break;case 牛肉:case 羊肉:factory new CookingFactory2();break;default:factory null;break;}if (factory null) {throw new Exception(菜品不存在);}cooking factory.createCooking(type);return cooking;} } 总结 以上代码可以看出这个模式的好处就是当要加一些新的产品时不用去改动原先的工厂而是直接创建一个新的工厂更符合开闭原则。 可以看出当一类产品只有一个工厂类时就是简单工厂模式。当一类产品有多个工厂类时就是工厂方法模式。工厂方法模式就是对简单工厂模式的进一步抽象和拓展。 但是这种模式还是有缺点当增加了新的产品后还是要对总工厂类中的代码进行一定修改还是没有很好地符合开闭原则。当然后面还有更好的能解决此问题的模式拭目以待吧。
http://www.tj-hxxt.cn/news/231665.html

相关文章:

  • 衡水做网站报价兰州企业网络优化服务
  • 大连企业招聘网站徐州百度搜索网站排名
  • 网站开发建设价格曲周县建设局网站
  • 孝感网站建设做网站哪个服务器好
  • 机器配件做外贸上什么网站洛阳网络公司排名
  • 洛阳网站建设好做不frontpage做的网站好不好
  • 网站建设推广书籍建筑企业网站源码
  • 网站一般用什么软件做页游传奇
  • 生成图片的网站网站设计培训班如何
  • 做科技申报看什么网站兴安盟老区建设促进会网站
  • 餐饮营销型网站案例厦门网站建设 孚珀科技
  • 查询工具类网站制作网站建设艾金手指六六12
  • 网站开发外文参考文献wordpress云落主题
  • 西安网站建设方案优化logo生成
  • 济南做网站优化公司做网站销售怎么开发客户
  • 大连地区做网站做视频网站有什么
  • 展示系统 网站模板电子商务网站建设的规划
  • 做盗版电影网站犯法不公益环保网站建设
  • 关于论文网站开发参考文献哈尔滨建设工程交易中心
  • wordpress站长地图兰州建设局网站
  • 网站代理工具安贞做网站公司
  • 做铁合金用哪个外贸网站好赣州网站建设
  • 环保厅网站建设的必要性新的网站建设技术方案
  • 信阳网站建设汉狮报价设计师资格证
  • 网站建设营销外包公司排名深圳的网站建设公司那家好
  • dw做的网站怎么做后台广东新闻联播2011
  • WordPress代码改silder池州网站seo
  • 太仓市住房和城乡建设局规网站网站开发实训基本要求
  • 郑州区块链数字钱包网站开发公司网站如何上传数据库
  • 免费网站建设可信吗wordpress 软件站主题