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

互联网招聘网站排行青岛网络优化代理

互联网招聘网站排行,青岛网络优化代理,广西网站建设产品优化,近期国家新闻1、组合模式基本介绍 1) 组合模式#xff08;Composite Pattern#xff09;#xff0c;又叫部分整体模式#xff0c;它创建了对象组的树形结构#xff0c;将对象组合成树状结构以 表示“整体-部分”的层次关系。 2) 组合模式依据树形结构来组合对象#xff0c;用来表示部…1、组合模式基本介绍 1) 组合模式Composite Pattern又叫部分整体模式它创建了对象组的树形结构将对象组合成树状结构以 表示“整体-部分”的层次关系。 2) 组合模式依据树形结构来组合对象用来表示部分以及整体层次。 3) 这种类型的设计模式属于结构型模式。 4) 组合模式使得用户对单个对象和组合对象的访问具有一致性即组合能让客户以一致的方式处理个别对象以及组合对象2、原理类图 1) Component :这是组合中对象声明接口在适当情况下实现所有类共有的接口默认行为,用于访问和管理 Component 子部件, Component 可以是抽象类或者接口 2) Leaf : 在组合中表示叶子节点叶子节点没有子节点 3) Composite :非叶子节点 用于存储子部件 在 Component 接口中实现 子部件的相关操作比如增加(add),删除3、应用实例 要求 编写程序展示一个学校院系结构需求是这样要在一个页面中展示出学校的院系组成一个学校有多个学院 一个学院有多个系类图 代码实现 public abstract class OrganizationComponent {public String name;public String dsc;public OrganizationComponent(String name, String dsc) {this.name name;this.dsc dsc;}public String getName() {return name;}public void setName(String name) {this.name name;}public String getDsc() {return dsc;}public void setDsc(String dsc) {this.dsc dsc;}// 方法print做成抽象的子类都需要实现protected abstract void print();protected void add(OrganizationComponent organizationComponent){// 默认实现throw new UnsupportedOperationException();}protected void remove(OrganizationComponent organizationComponent){// 默认实现throw new UnsupportedOperationException();} }public class University extends OrganizationComponent{ListOrganizationComponent organizationComponents new ArrayListOrganizationComponent();public University(String name, String dsc) {super(name, dsc);}Overrideprotected void print() {System.out.println(-------------- getName() --------------);//遍历 organizationComponentsfor (OrganizationComponent organizationComponent : organizationComponents) {organizationComponent.print();}}Overrideprotected void add(OrganizationComponent organizationComponent) {organizationComponents.add(organizationComponent);}Overrideprotected void remove(OrganizationComponent organizationComponent) {organizationComponents.remove(organizationComponent);} }public class College extends OrganizationComponent{ListOrganizationComponent organizationComponents new ArrayListOrganizationComponent();public College(String name, String dsc) {super(name, dsc);}Overrideprotected void print() {System.out.println(-------------- getName() --------------);//遍历 organizationComponentsfor (OrganizationComponent organizationComponent : organizationComponents) {organizationComponent.print();}}Overrideprotected void add(OrganizationComponent organizationComponent) {organizationComponents.add(organizationComponent);}Overrideprotected void remove(OrganizationComponent organizationComponent) {organizationComponents.remove(organizationComponent);} }public class Department extends OrganizationComponent{public Department(String name, String dsc) {super(name, dsc);}Overrideprotected void print() {System.out.println(getName());} }public class Client {public static void main(String[] args) {//从大到小创建对象学校OrganizationComponent university new University(清华大学, 中国顶级大学“);//创建学院OrganizationComponent computerCollege new College(计算机学院, 计算机学院);OrganizationComponent infoEngineercollege new College(信息工程学院, 信息工程学院“);//创建各个学院下面的系(专业)computerCollege.add(new Department(软件工程, 软件工程不错));computerCollege.add(new Department(网络工程, 网络工程不错));computerCollege.add(new Department(计算机科学与技术, 计算机科学与技术是老牌的专业));infoEngineercollege.add(new Department(通信工程, 通信工程不好学));infoEngineercollege.add(new Department(信息工程, 信息工程好学“));//将学院加入到学校university.add(computerCollege);university.add(infoEngineercollege);//打印university.print();} }结果 --------------清华大学-------------- --------------计算机学院-------------- 软件工程 网络工程 计算机科学与技术 --------------信息工程学院-------------- 通信工程 信息工程进程已结束,退出代码04、在HashMap中的源码分析 类图 5、注意事项和细节 1) 简化客户端操作。客户端只需要面对一致的对象而不用考虑整体部分或者节点叶子的问题。 2) 具有较强的扩展性。当我们要更改组合对象时我们只需要调整内部的层次关系客户端不用做出任何改动. 3) 方便创建出复杂的层次结构。客户端不用理会组合里面的组成细节容易添加节点或者叶子从而创建出复杂的 树形结构 4) 需要遍历组织机构或者处理的对象具有树形结构时, 非常适合使用组合模式. 5) 要求较高的抽象性如果节点和叶子有很多差异性的话比如很多方法和属性都不一样不适合使用组合模式
http://www.hkea.cn/news/14272834/

相关文章:

  • 四川建设厅网站登录不上咋办wordpress登陆可见
  • 孝感建设公司网站哪些做任务可以赚钱的网站
  • 地方门户网站域名qq是哪个公司的
  • 邢台网站建设平台浙江省建设厅执业资格注册中心网站
  • 网站的seo如何优化毕业设计模板网站
  • 哪个网站可以做微信引导图帝国cms做微网站
  • 长春哪家公司做网站好seo是什么生肖
  • 免费自助建站平台优化网络培训
  • 房山广州网站建设批量注册域名
  • 河南省住建厅网站豫建设标超实用网站
  • 凡科是免费做网站吗中国建设部官网信息查询
  • html手机网站模板下载东莞理工学院教务处
  • 网站开发的步骤wordpress企业主题下载
  • wordpress怎么给别人建站深圳品牌策划机构
  • 怎么用微信做网站做淘客网站用什么程序
  • 天津协会网站建设wordpress备份至七牛
  • 网站建设工作会议百度字体如何转换wordpress
  • 蓝色大气企业网站源码秦皇岛手机网站制作公司
  • 湘潭做网站出色磐石网络常德做网站专业公司哪家好
  • 如何查看网站是谁建设的网站每个页面关键词都一样
  • 网站建设语言容桂营销网站建设
  • 上海企业自助建站系统国外网站布局
  • 网站建设人员管理制度做影视网站侵权
  • 梁山城乡建设局网站建材网站建设案例
  • 建设电影网站数据库脚本wordpress 站内消息
  • 电脑编程与网站建设网站建设与管理的未来规划
  • 易橙云做的网站怎么样网站制作网络推广价格
  • 微端网站开发平台网站建设公司
  • 苏州新港建设集团有限公司网站武进网站建设要多少钱
  • 易语言做网站创网数据恢复