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

广水市建设局网站广告设计公司装修案例

广水市建设局网站,广告设计公司装修案例,wordpress 调用模板文件,院系网站建设1 讲讲工厂方法模式#xff0c; 1.1 给我一个java的demo 工厂方法模式是一种创建型设计模式#xff0c;它提供了一个接口用于创建对象#xff0c;但允许子类修改将要创建的对象类型。这种模式抽象了对象的创建过程#xff0c;使得代码可以在不知道创建的对象具体类的情况…1 讲讲工厂方法模式 1.1 给我一个java的demo 工厂方法模式是一种创建型设计模式它提供了一个接口用于创建对象但允许子类修改将要创建的对象类型。这种模式抽象了对象的创建过程使得代码可以在不知道创建的对象具体类的情况下工作。 基本结构 Product产品: 这是创建的对象的接口。ConcreteProduct具体产品: 这是实现Product接口的具体类。Creator创建者: 这是一个抽象类它定义了一个抽象的工厂方法。这个方法返回一个Product类型的对象。ConcreteCreator具体创建者: 这是继承自Creator的类它实现了工厂方法来生产具体的产品。 示例 假设我们要设计一个UI库其中有多种按钮类型。我们可以使用工厂方法模式来设计这个库。 // Product interface Button {void render(); }// ConcreteProductA class WindowsButton implements Button {Overridepublic void render() {System.out.println(Rendering a Windows-style button.);} }// ConcreteProductB class MacButton implements Button {Overridepublic void render() {System.out.println(Rendering a Mac-style button.);} }// Creator abstract class Dialog {// This is the factory methodprotected abstract Button createButton();public void render() {// use the factory method to create a product objectButton button createButton();button.render();} }// ConcreteCreatorA class WindowsDialog extends Dialog {Overrideprotected Button createButton() {return new WindowsButton();} }// ConcreteCreatorB class MacDialog extends Dialog {Overrideprotected Button createButton() {return new MacButton();} }public class FactoryMethodDemo {public static void main(String[] args) {Dialog windowsDialog new WindowsDialog();windowsDialog.render();Dialog macDialog new MacDialog();macDialog.render();} }在上面的示例中Dialog是一个创建者它有一个工厂方法createButton()。具体的对话框如WindowsDialog和MacDialog实现了这个工厂方法来创建具体的按钮。 1.2 相比于简单工厂模式这种工厂方法模式有什么好处呢 工厂方法模式和简单工厂模式都是用于创建对象的但它们在结构和意图上有所不同。下面是工厂方法模式相比于简单工厂模式的一些优势 更好的可扩展性: 简单工厂当需要添加新的产品时你可能需要修改已有的工厂类这违反了开闭原则对扩展开放对修改封闭。工厂方法只需添加新的具体创建者ConcreteCreator和具体产品ConcreteProduct无需修改已有的代码。这使得系统更加模块化和可扩展。 单一职责原则 在工厂方法模式中每个具体创建者ConcreteCreator都只负责生产一种具体产品ConcreteProduct。这符合单一职责原则。而在简单工厂模式中一个工厂类可能需要处理多种产品的创建这可能导致工厂类的代码过于复杂和臃肿。 更好地与子类合作 工厂方法模式允许子类提供其自己版本的对象实例化逻辑这增加了系统的灵活性。简单工厂模式中创建对象的逻辑被固定在工厂类中难以做出细粒度的定制。 更好的封装 在工厂方法模式中每种产品的创建逻辑都被封装在相应的具体创建者中。这使得创建逻辑和产品本身更紧密地结合。而在简单工厂模式中所有的创建逻辑都集中在一个工厂类中这可能导致工厂类过于庞大。 动态指定工厂 在工厂方法模式中你可以动态地更改或指定使用哪个工厂来创建对象提供了更大的灵活性。在简单工厂模式中通常基于一个参数或条件来决定创建哪种对象这限制了其动态性。 尽管工厂方法模式提供了这些优点但它也带来了更多的类和更复杂的结构。对于某些简单的情况简单工厂模式可能更为合适。设计模式的选择应该基于项目的具体需求和上下文。 2
http://www.hkea.cn/news/14589250/

相关文章:

  • 网站开发和app开发wordpress无版权主题
  • 做网站公司职务网络宣传
  • 建筑工程网站搭建wordpress搭建短视频网站
  • 郑州最好的网站建设最新设计装修
  • 在那些网站做宣传更好wordpress动态图片不显示
  • 免费发布信息网站网址大全wordpress.exe
  • 免费做简易网站高端品牌推广方案
  • 网站建设项目登记表做水果生意去哪个网站
  • 济南网站建设和维护ps教程自学网官网
  • 株洲网站建设优化企业广东建设项目备案公示网站
  • 南宁建设信息网站龙华区网站建设
  • 做企业网站为什么要服务器呢二级域名怎么注册
  • 网站简约式布局特点dw做链接网站无法显示该页面
  • 销售员做网站深圳餐饮设计公司排名
  • 从零搭建企业网站广西建设厅官方网站电话
  • 烟台网站制作软件游民星空是用什么做的网站
  • 公司制作网站需要军事最新新闻播报
  • 淡水网站建设网站监控怎么做
  • 村级网站建设 不断增强网站排名优化
  • 网站规划建设案例网站数据库是什么意思
  • 网站建设需要多少钱小江网页设计南阳做网站优化价格
  • 什么网站个人可以建设营销app
  • 网站你应该明白我的意思吗晋城商城网站开发设计
  • 个人空间网站建设怎样在淘宝网做网站
  • 有没有做翻译赚钱的网站济南网站制作方案
  • 文库网站开发教程wordpress媒体库文件夹
  • 民宿网站怎么做wordpress3.9.1下载
  • 网站建设中忽略的字体侵权行为wordpress要钱么
  • 做淘客网站需要多大空间网站建设与管理的总结报告
  • 收费图片网站手机桂林生活网