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

江西省住房城乡建设厅网站网站网络结构设计

江西省住房城乡建设厅网站,网站网络结构设计,2010年4月江苏省03340网站建设与管理答案,我们的网站抽象工厂 是一种为访问类提供一个创建一族相关或者相互依赖对象的接口#xff0c;且访问类无须指定所要产品的具体类就可以得到同一族的不同等级的产品模式结构 抽象工厂模式是工厂方法模式的升级版本#xff0c;工厂方法模式只生产一个等级的产品#xff0c;而抽象工厂模式…抽象工厂 是一种为访问类提供一个创建一族相关或者相互依赖对象的接口且访问类无须指定所要产品的具体类就可以得到同一族的不同等级的产品模式结构 抽象工厂模式是工厂方法模式的升级版本工厂方法模式只生产一个等级的产品而抽象工厂模式可以生产多个等级的产品 结构 抽象工厂(Abstract Factory):提供了创建产品的接口包含了多个创建产品的方法可以创建不同等级的产品。具体工厂(Concreteractory):主要是实现抽象工厂中的抽象方法完成具体产品的创建。抽象产品(product):定义了产品的规范描述了产品的主要特性和功能抽象工厂模式有多个抽象产品。具体产品(ConcreteProduct实现了抽象产品角色所定义的接口由具体工厂来创建它同县体工厂之间是多对一的关系 实现 升级到抽象工厂模式通常意味着我们要处理多个相关的产品族每个产品族都有各自的接口或抽象类而抽象工厂则提供了创建这些产品族中产品的接口。下面是将工厂方法模式升级为抽象工厂模式的示例 首先我们引入一个新的产品族——颜色(Color)并为形状和颜色分别定义接口 // 定义形状接口 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 Color {void fill(); }// 定义具体颜色类 class Red implements Color {Overridepublic void fill() {System.out.println(Filling with red color...);} }class Blue implements Color {Overridepublic void fill() {System.out.println(Filling with blue color...);} }// 定义抽象工厂接口 interface AbstractFactory {Shape getShape(String type);Color getColor(String type); }// 定义具体工厂类 class ShapeColorFactory implements AbstractFactory {Overridepublic Shape getShape(String type) {if (circle.equalsIgnoreCase(type)) {return new Circle();} else if (rectangle.equalsIgnoreCase(type)) {return new Rectangle();} else {throw new IllegalArgumentException(Invalid shape type: type);}}Overridepublic Color getColor(String type) {if (red.equalsIgnoreCase(type)) {return new Red();} else if (blue.equalsIgnoreCase(type)) {return new Blue();} else {throw new IllegalArgumentException(Invalid color type: type);}} }// 客户端代码 public class Client {public static void main(String[] args) {// 使用抽象工厂创建不同形状和颜色的对象AbstractFactory factory new ShapeColorFactory();Shape circle factory.getShape(circle);circle.draw();Color red factory.getColor(red);red.fill();Shape rectangle factory.getShape(rectangle);rectangle.draw();Color blue factory.getColor(blue);blue.fill();// 尝试创建无效类型try {Shape invalidShape factory.getShape(triangle);Color invalidColor factory.getColor(green);} catch (IllegalArgumentException e) {System.out.println(e.getMessage());}} } 在这个抽象工厂模式的示例中AbstractFactory接口提供了创建形状和颜色两个产品族的方法而ShapeColorFactory是它的具体实现负责创建具体的产品对象。客户端代码现在可以一次性获取形状和颜色的完整组合而且可以轻松地扩展其他产品族或者产品类型。 优点 当一个产品族中的多个对象被设计成一起工作时可以保证客户端始终只使用同一产品族中的对象。 缺点 当产品族中需要增加一个新的产品时所有的工厂类都需要进行修改。
http://www.zqtcl.cn/news/797521/

相关文章:

  • 镇江市建设工程网站蜘蛛爬取网站
  • 个人备案网站可以做电影站吗微信做的地方门户网站
  • 网站上传根目录美点网络公司网站
  • 长春微信做网站网站开发和设计如何合作
  • 江门网站制作报价买网站不给我备案
  • 太原百度网站快速优化网站 后台 数据 下载
  • 某网站开发项目进度表天元建设集团有限公司赵唐元
  • 网站外链收录很多 内链收录几个西安网站seo优化
  • 网站源码制作网站产品类别顺序如果修改
  • 北京定制网站开发公司浩森宇特本机快速做网站
  • 校网站建设方案网站怎么优化关键词快速提升排名
  • 手机号注册的网站wordpress蚂蚁主题
  • 专业的集团网站设计公司优化网站服务
  • 深圳专业网站建设公司好吗个人网站排名欣赏
  • 百度网站流量查询网站建设流程总结
  • 使用代理服务器后看什么网站怎么做动态的实时更新的网站
  • 网站修改titlephp 网站下载器
  • 网站开发飞沐东莞人才市场档案服务中心
  • 北京中小企业网站建设智慧团建官网登录口手机版
  • wordpress插 件seo服务是什么
  • 推荐几个安全没封的网站湖南长大建设集团股份有限公司网站
  • 免费淘宝客网站模板下载怎么申请注册公司
  • 网站动画用什么做wordpress 主题 下载
  • 制作网站的app推动高质量发展的必要性
  • 网站建设培训个人企业的官网
  • 物流公司做网站佛山市城乡和住房建设局网站
  • 建设银行六安市分行网站云梦网络建站
  • 寿光专业做网站的公司有哪些网页制作基础教程黄洪杰
  • discuz可以做门户网站么江西省网站备案
  • 天眼查在线查询系统seo平台优化服务