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

企业网站推广怎么做淘宝网站建设类目需要什么资质

企业网站推广怎么做,淘宝网站建设类目需要什么资质,兰州做网站价格,银川市网页设计培训定义#xff1a; 工厂方法模式#xff08;Factory Method Pattern#xff09;是一种创建型设计模式#xff0c;用于解决对象创建的问题。它定义了一个创建对象的接口#xff0c;但让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其子类。 工厂方法模式的关键…定义 工厂方法模式Factory Method Pattern是一种创建型设计模式用于解决对象创建的问题。它定义了一个创建对象的接口但让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其子类。 工厂方法模式的关键组成部分包括 抽象创建者Creator 定义了一个工厂方法通常是一个抽象方法用于创建产品对象。创建者通常包含依赖于抽象产品的代码。 具体创建者Concrete Creator 实现了抽象创建者定义的工厂方法用于返回一个具体产品的实例。每个具体创建者都负责创建一个特定类型的产品。 抽象产品Product 定义了产品的接口。在抽象创建者的代码中所有对产品的引用都使用这个接口。 具体产品Concrete Product 实现了抽象产品定义的接口。工厂方法返回的产品实例实际上是某个具体产品对象。 解决的问题 创建对象的灵活性 当一个类不知道它所必须创建的对象的类的时候。工厂方法模式允许类把实例化延迟到子类进行这提供了更大的灵活性。 产品类扩展的便利性 当一个类希望由其子类来指定创建的对象时。通过定义工厂方法子类可以覆盖这个方法以改变创建对象的类型。 解耦产品的具体实现和创建过程 工厂方法模式使得客户代码与产品的具体实现解耦客户代码通过工厂接口创建产品无需关心产品的具体实现。 单一职责原则 工厂方法模式可以将产品的创建职责集中到不同的工厂类中每个工厂类负责创建一种具体产品这符合单一职责原则。 开闭原则 系统更容易扩展可以引入新的具体产品和具体工厂类而无需修改现有代码。这符合开闭原则即对扩展开放对修改封闭 使用场景 不同环境下创建不同实例 当对象的创建需要基于不同的环境或条件时例如不同的配置、操作系统或者不同的资源要求。 明确分离客户端和产品实现 当需要明确区分客户端和产品的具体实现使得客户端不依赖于产品实现的具体类时。 单个类负责多个不同对象的创建 当一个类需要创建多种类型的对象且这些对象有共同的基类或接口时但同时又需要保持类的职责单一。 扩展产品类时避免影响客户端 当系统要求提供扩展产品类的能力而不希望这些更改影响到已有的客户端代码时。 需要封装对象的创建过程 当对象的创建过程需要被封装起来以便提供更多的复用性和灵活性时。 类的实例化过程复杂或有特殊要求 当创建对象的过程很复杂如涉及到复杂的初始化步骤或者需要进行资源回收等。 示例代码 // 产品接口 public interface Product {void use(); }// 具体产品 public class ConcreteProductA implements Product {Overridepublic void use() {System.out.println(Using ConcreteProductA);} }public class ConcreteProductB implements Product {Overridepublic void use() {System.out.println(Using ConcreteProductB);} }// 创建者/工厂接口 public interface Factory {Product createProduct(); }// 具体创建者/工厂 public class ConcreteFactoryA implements Factory {Overridepublic Product createProduct() {return new ConcreteProductA();} }public class ConcreteFactoryB implements Factory {Overridepublic Product createProduct() {return new ConcreteProductB();} }主要符合的设计原则 开闭原则Open-Closed Principle: 工厂方法模式非常符合开闭原则。它允许系统在不修改现有代码的情况下引入新的产品类型。当系统需要扩展新的产品时只需要添加相应的具体工厂类和产品类即可。 单一职责原则Single Responsibility Principle: 在工厂方法模式中每个具体工厂类只负责创建单一类型的产品。这符合单一职责原则因为每个类都只负责一个具体的创建任务。 依赖倒转原则Dependency Inversion Principle: 工厂方法模式实现了依赖倒转原则因为客户代码依赖于抽象接口产品接口和工厂接口而不是具体的类实现。这意味着客户代码并不依赖于具体的产品实例化逻辑。 工厂方法模式通过定义一个用于创建对象的接口让子类决定实例化哪个类从而使一个类的实例化延迟到其子类提高了代码的灵活性和可扩展性。同时它支持良好的封装性客户代码仅通过接口与工厂交互无需关心具体的产品实现细节。 在JDK中的应用 java.util.Calendar 类 Calendar.getInstance() 是一个工厂方法它根据当前的时间和默认时区返回一个 Calendar 的具体实例。此方法隐藏了具体 Calendar 子类的创建细节。 java.util.ResourceBundle 类 ResourceBundle.getBundle() 方法是一个工厂方法用于根据给定的基础名和目标区域设置加载资源束。这个方法封装了资源束对象的选择和加载过程。 java.nio.charset.Charset 类 Charset.forName() 方法根据字符集的名称返回一个 Charset 对象。该方法是一个工厂方法它隐藏了字符集对象的实际创建过程。 java.sql.DriverManager 类 在JDBC API中DriverManager.getConnection() 方法根据数据库URL、用户名和密码返回一个 Connection 对象。这是工厂方法模式的一个应用它封装了数据库连接对象的创建细节。 java.lang.NumberFormat 类 NumberFormat 类提供了多个工厂方法如 getNumberInstance(), getCurrencyInstance()来获取不同格式化风格的 NumberFormat 对象。 在Spring中的应用 Spring的BeanFactory BeanFactory 是Spring框架的核心接口它提供了高级的配置机制来管理任何类型的对象。BeanFactory 作为一个对象工厂它为依赖注入DI提供了支持管理应用程序中定义的bean并在需要时创建和返回bean实例。 ApplicationContext ApplicationContext 是 BeanFactory 的子接口提供了更丰富的功能。它不仅用于加载Bean定义还提供了国际化、事件传播、资源加载等其他功能。在Spring中ApplicationContext 通常用作Bean工厂。 FactoryBean 在Spring中FactoryBean 接口用于定义一个Bean它本身作为工厂来生产其他对象。这个接口允许实现类在Spring容器中定义复杂的初始化逻辑。 静态工厂方法和实例工厂方法 Spring允许通过静态工厂方法或实例工厂方法来创建Bean。这在Spring的配置中通过 bean 元素的 factory-method 属性来实现。 ServiceLocatorFactoryBean 这是一个特殊的 FactoryBean用于定义服务定位器。它可以用来抽象对服务接口的访问使得客户端代码不需要直接与服务实现类耦合。
http://www.pierceye.com/news/631890/

相关文章:

  • 旅行社服务网点能否做网站wordpress4.9.8 php版本
  • 网站名称 如何注册wordpress用户名的要求
  • 玉树州wap网站建设公司常州市工程建设招标网
  • 自助网站建设技术支持如何做网站代码
  • 企业数据查询网站word 没有安装wordpress
  • 注册一个设计公司需要多少钱重庆网站建设及优化
  • 青岛企业建设网站公司如何传图片做网站
  • 手机网站源码教程个人博客系统的设计与实现
  • 高端网站改版南京网站如何制作
  • 个人网站建设课程专业彩票网站开发 APP开发
  • 学网站开发首先学哪些基础兰州网站设计哪个平台好
  • 网站后台看不到部分内容桐庐建设局网站
  • 宁夏网站建设费用地址wordpress建站好用吗
  • 微信网站制作哪个好吕梁网站制作
  • 手机怎么制作自己的网站线上运营推广方案
  • 泉州企业制作网站wordpress上传顶部图像
  • php建立网站广州创意设计公司
  • 东营专业网站建设济南天桥区网站建设公司
  • 鹤壁做网站多少钱网站开发 简单留言板
  • 网站建设 阿里东莞seo建站优化公司
  • logo设计竞标网站wordpress攻击跳转
  • 专门做瑜伽的网站wordpress docker镜像
  • 中国航天建设集团有限公司网站wordpress建站 防攻击
  • 买邮箱的网站网站与系统对接图文方案
  • 网页和网站区别wordpress展示企业主题免费
  • 网站制作过程个人网站吗
  • gta5网站建设中温州建设局老网站
  • 凤岗仿做网站专业网站设计制作优化排名
  • 企业网站seo优化德国设计网站大全
  • 重庆网站制作公司电话whois域名查询