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

品牌商城网站开发网站建设主要研究内容

品牌商城网站开发,网站建设主要研究内容,重庆市建设工程信息服务平台,做个购物商城网站多长时间引言 1. 工厂模式的定义 2. 工厂模式的类型 2.1 简单工厂模式 2.1.1 结构 2.1.2 示例代码 2.2 工厂方法模式 2.2.1 结构 2.2.2 示例代码 2.3 抽象工厂模式 2.3.1 结构 2.3.2 示例代码 3. 工厂模式的优点 4. 工厂模式的缺点 5. 实际应用场景 6. 总结 引言 工厂模…引言 1. 工厂模式的定义 2. 工厂模式的类型 2.1 简单工厂模式 2.1.1 结构 2.1.2 示例代码 2.2 工厂方法模式 2.2.1 结构 2.2.2 示例代码 2.3 抽象工厂模式 2.3.1 结构 2.3.2 示例代码 3. 工厂模式的优点 4. 工厂模式的缺点 5. 实际应用场景 6. 总结 引言 工厂模式Factory Pattern是创建型设计模式之一它提供了一种创建对象的最佳方式。在工厂模式中我们不再直接通过 new 关键字来实例化对象而是通过调用工厂方法来获取对象。这种方式将对象的创建和使用分离提高了代码的灵活性和可维护性。 1. 工厂模式的定义 工厂模式是一种创建型设计模式它提供了一个创建对象的接口但允许子类决定实例化哪一个类。工厂方法让类的实例化推迟到子类。 2. 工厂模式的类型 工厂模式主要有以下几种类型 简单工厂模式Simple Factory工厂方法模式Factory Method抽象工厂模式Abstract Factory 2.1 简单工厂模式 简单工厂模式不是严格意义上的设计模式因为它并不符合开闭原则。但它提供了一个简单的对象创建机制。 2.1.1 结构 产品接口Product Interface定义产品的公共接口。具体产品Concrete Product实现产品接口的具体类。工厂类Factory Class包含创建产品的方法根据传入的参数返回相应的产品实例。 2.1.2 示例代码 // 产品接口 interface Shape {void draw(); }// 具体产品 class Circle implements Shape {Overridepublic void draw() {System.out.println(Drawing a Circle);} }class Rectangle implements Shape {Overridepublic void draw() {System.out.println(Drawing a Rectangle);} }// 工厂类 class ShapeFactory {// 根据传入的形状类型创建相应的形状对象public static Shape getShape(String shapeType) {if (shapeType null) {return null;}if (shapeType.equalsIgnoreCase(CIRCLE)) {return new Circle();} else if (shapeType.equalsIgnoreCase(RECTANGLE)) {return new Rectangle();}return null;} }// 客户端代码 public class SimpleFactoryDemo {public static void main(String[] args) {Shape circle ShapeFactory.getShape(CIRCLE);circle.draw();Shape rectangle ShapeFactory.getShape(RECTANGLE);rectangle.draw();} } 2.2 工厂方法模式 工厂方法模式定义了一个用于创建对象的接口但由子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到其子类。 2.2.1 结构 产品接口Product Interface定义产品的公共接口。具体产品Concrete Product实现产品接口的具体类。工厂接口Factory Interface声明创建产品的方法。具体工厂Concrete Factory实现工厂接口创建具体的产品实例。 2.2.2 示例代码 // 产品接口 interface Shape {void draw(); }// 具体产品 class Circle implements Shape {Overridepublic void draw() {System.out.println(Drawing a Circle);} }class Rectangle implements Shape {Overridepublic void draw() {System.out.println(Drawing a Rectangle);} }// 工厂接口 interface ShapeFactory {Shape createShape(); }// 具体工厂 class CircleFactory implements ShapeFactory {Overridepublic Shape createShape() {return new Circle();} }class RectangleFactory implements ShapeFactory {Overridepublic Shape createShape() {return new Rectangle();} }// 客户端代码 public class FactoryMethodDemo {public static void main(String[] args) {ShapeFactory circleFactory new CircleFactory();Shape circle circleFactory.createShape();circle.draw();ShapeFactory rectangleFactory new RectangleFactory();Shape rectangle rectangleFactory.createShape();rectangle.draw();} } 2.3 抽象工厂模式 抽象工厂模式提供一个创建一系列相关或相互依赖对象的接口而无需指定它们具体的类。 2.3.1 结构 抽象产品接口Abstract Product Interface定义一组产品接口。具体产品Concrete Product实现抽象产品接口的具体类。抽象工厂接口Abstract Factory Interface声明创建抽象产品的方法。具体工厂Concrete Factory实现抽象工厂接口创建具体的产品实例。 2.3.2 示例代码 // 抽象产品接口 interface Shape {void draw(); }interface Color {void fill(); }// 具体产品 class Circle implements Shape {Overridepublic void draw() {System.out.println(Drawing a Circle);} }class Rectangle implements Shape {Overridepublic void draw() {System.out.println(Drawing a Rectangle);} }class Red implements Color {Overridepublic void fill() {System.out.println(Filling with Red color);} }class Green implements Color {Overridepublic void fill() {System.out.println(Filling with Green color);} }// 抽象工厂接口 interface AbstractFactory {Shape createShape(String shapeType);Color createColor(String colorType); }// 具体工厂 class ShapeFactory implements AbstractFactory {Overridepublic Shape createShape(String shapeType) {if (shapeType.equalsIgnoreCase(CIRCLE)) {return new Circle();} else if (shapeType.equalsIgnoreCase(RECTANGLE)) {return new Rectangle();}return null;}Overridepublic Color createColor(String colorType) {return null;} }class ColorFactory implements AbstractFactory {Overridepublic Shape createShape(String shapeType) {return null;}Overridepublic Color createColor(String colorType) {if (colorType.equalsIgnoreCase(RED)) {return new Red();} else if (colorType.equalsIgnoreCase(GREEN)) {return new Green();}return null;} }// 客户端代码 public class AbstractFactoryDemo {public static void main(String[] args) {AbstractFactory shapeFactory new ShapeFactory();Shape circle shapeFactory.createShape(CIRCLE);circle.draw();AbstractFactory colorFactory new ColorFactory();Color red colorFactory.createColor(RED);red.fill();} } 3. 工厂模式的优点 封装性对象的创建过程被封装在工厂方法中客户端不需要知道具体的创建细节。解耦客户端与具体的产品类解耦可以方便地更换具体的产品类。扩展性添加新的产品类时只需扩展工厂类即可不需要修改现有的代码。一致性所有对象都通过工厂方法创建确保了创建的一致性和完整性。 4. 工厂模式的缺点 增加复杂度引入了额外的工厂类增加了系统的复杂度。单一职责原则工厂类可能变得非常庞大违反了单一职责原则。 5. 实际应用场景 数据库访问层根据不同的数据库类型如 MySQL、Oracle创建相应的数据库连接对象。日志系统根据不同的日志级别如 DEBUG、INFO、ERROR创建相应的日志记录器。图形界面根据不同的平台如 Windows、Linux创建相应的 UI 控件。 6. 总结 工厂模式是一种非常实用的设计模式它可以提高代码的可维护性和扩展性。通过将对象的创建过程封装在工厂类中客户端可以更加灵活地使用对象而不必关心具体的创建细节。
http://www.hkea.cn/news/14328834/

相关文章:

  • 别人做的网站潍坊百度关键词排名
  • 郑州网站建设代理天蝎网络服务公司
  • 设计素材网站情人节零基础网站建设教学服务
  • 辽宁丹东建设厅网站网上建立公司网站
  • 品牌网站建设信息沈阳定制网络机箱机柜
  • 网站建设属于什么合同微网站设计制作
  • 进网站备案时间设计本网站
  • 网站推广服务 商务服务建网站要钱吗
  • 网站百度显示绿色官网字如何做的计算机网站建设与开发
  • seo研究中心好客站网站导航一定要一样吗
  • 做外贸网站的效果怎么样做ppt兼职网站有哪些
  • 企业门户网站建设思路html编辑器手机版
  • 做网站需要招什么条件阿里巴巴做网站费用计入
  • 吴江建设局房产网站怎么样用ppt做网站
  • dedecms建网站做网站优化公司排行
  • 城乡建设杂志官方网站第八章 电子商务网站建设试题
  • 图片网站 模板如何创建二级域名
  • 做得好的企业网站连云港建设厅官方网站
  • 青浦做网站深圳有哪些网站公司
  • html5网站制作wordpress 虚拟交易商城
  • 免费永久网站注册手工制作火箭
  • 网站开发都用什么语言手机网站 滑动翻页
  • 获取网站域名合肥金融网站设计
  • 个人网站意义无锡华庄行业网站建设
  • 网站建设的流程范文1500字html网页结构文件
  • 邢台专业网站建设推荐2021网页游戏
  • 免费自助建站如何做网站上抓视频
  • 公司做零申报在哪个网站上上海网站开发企业
  • 南宁市兴宁区建设局网站营销型企业网站建设应遵循的原则
  • 中国效能建设网站企业管理培训课程有哪些