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

橙色网站设计公司网站传图片

橙色网站设计,公司网站传图片,企业运营管理师证书,郑州主城区组合模式简绍 组合模式#xff08;Composite Pattern#xff09;是一种结构型设计模式#xff0c;它允许你将对象组合成树形结构来表示“部分-整体”的层次结构。组合模式使得客户端可以用一致的方式处理单个对象和组合对象。这样#xff0c;可以在不知道对象具体类型的条…组合模式简绍 组合模式Composite Pattern是一种结构型设计模式它允许你将对象组合成树形结构来表示“部分-整体”的层次结构。组合模式使得客户端可以用一致的方式处理单个对象和组合对象。这样可以在不知道对象具体类型的条件下操作对象集合。 组合模式主要包含三种角色 Component组件声明一个接口在适当情况下此接口被叶节点和容器节点共享。Leaf叶节点定义终端对象。Composite容器节点定义具有子部件的那些部件的行为。存储子部件。 组合模式的应用场景 组合模式的优缺点 组合模式的优点 一致性客户端可以一致地处理单个对象和组合对象。灵活性可以很容易地添加新的叶子节点或组合节点。透明性客户端不需要知道对象的具体类型就可以操作对象。 组合模式的缺点 复杂性对于简单操作组合模式可能会引入不必要的复杂性。额外开销组合模式可能会导致额外的内存和 CPU 开销尤其是在处理大量对象时 UML图 定义一个公共接口或抽象类它声明了所有叶子节点和容器节点共有的操作。 package CompositePatternModel;public interface Component {void test();Component getChild(int i);public void operation();public void add(Component component); } 实现 Component 接口中定义的操作但不关心其他与子节点相关的操作。 package CompositePatternModel;import java.util.ArrayList; import java.util.List;public class Composite implements Component{private String name;private ListComponent children new ArrayList();public Composite(String name){this.name name;}Overridepublic void test() {}Overridepublic Component getChild(int i) {return children.get(i);}Overridepublic void operation() {System.out.println(Composite name operation);for (Component c : children) {c.operation();}}Overridepublic void add(Component component) {children.add(component);}} 实现 Component 接口中定义的操作并且实现与子节点相关的操作。客户端可以一致地对待单个对象和组合对象。 package CompositePatternModel;public class Pattern implements Component{private String name;public Pattern(String name){this.name name;}Overridepublic void test() {System.out.println(test);}Overridepublic Component getChild(int i) {System.out.println(getChild);return null;}Overridepublic void operation() {System.out.println(operation: d name);}Overridepublic void add(Component component) {System.out.println(sdf component);}} 客户端可以一致地对待单个对象和组合对象。 package CompositePatternModel;public class Main {public static void main(String[] args) {Pattern pattern new Pattern(pattern1);Pattern pattern1 new Pattern(pattern2);Composite composite new Composite(Comp);composite.add(pattern);composite.add(pattern1);composite.operation();} } 表示部分-整体层次结构 当你需要表示一个具有层次结构的对象集合时组合模式是非常有用的。这种结构通常包含多个层次每个层次上的对象可以是一个独立的实体叶节点也可以是一个包含其他对象的容器组合节点。 示例 文件系统中的目录和文件目录可以包含其他目录和文件。组织结构图部门可以包含其他部门或员工。UI控件一个复合控件可以包含其他控件如面板包含按钮、文本框等 透明地处理单个对象和组合对象 当客户端代码需要以一致的方式处理单个对象和组合对象时组合模式可以让客户端无需关心处理的是单个对象还是组合对象。 示例 图形编辑器图形可以是单独的线条、矩形等基本图形也可以是由多个基本图形组成的复合图形。渲染引擎渲染对象可以是单一的几何体也可以是由多个几何体组成的复杂场景。 动态地增删对象 当需要在运行时动态地添加或移除对象并且这些对象可能是单个实体也可能是包含其他对象的容器时组合模式可以很好地支持这种需求。 示例 游戏中的场景管理游戏场景可以包含单个游戏对象也可以包含其他场景。 UI 界面构建一个窗口可以包含多个面板每个面板又可以包含多个组件。 需要递归处理的对象集合 当需要对一个层次结构进行递归处理时组合模式可以简化递归逻辑。 示例 企业组织结构的遍历遍历整个公司的部门和员工。文件系统的遍历递归地遍历目录和文件。 需要一致的接口 当希望在不同类型的对象之间提供一致的接口时组合模式可以确保所有的对象无论是叶子还是组合节点都遵循相同的接口定义。 示例 操作系统中的文件和目录文件和目录都需要支持读写、删除等操作。 网页中的 DOM 结构DOM 节点可以是文本节点也可以是包含其他节点的元素节点。 组合模式提供了一种优雅的方式来组织和操作层次结构中的对象使得客户端可以在不知道对象具体类型的情况下操作对象集合。这种模式在很多领域都有广泛的应用特别是在需要表示层次关系的场景中。
http://www.dnsts.com.cn/news/214758.html

相关文章:

  • 关键词搜不到我的网站wordpress调用数据库连接
  • 河北省建设安全监督站的网站查重网站开发
  • 奎屯网站建设多媒体展厅哪家公司好
  • 从网站开发到游戏编程深圳市宽带哪个公司的好
  • 手机微信客户端网站建设网站扫码怎么做
  • 做网站备案需要多长时间北仑网站建设29gz
  • 游戏平台网站建设外包和劳务派遣哪个更好
  • 网站设计两边为什么要留白瑞诺国际公司团队介绍
  • 新乡专业做网站的公司哪家好自定义菜单WordPress
  • 网站优化检查什么是网络营销渠道中最重要的中间商
  • 淘客联盟做任务网站做网站需要参考书目书
  • 盱眙网站建设公司南京建设企业管理高层培训
  • 检察院门户网站建设做网站阳泉
  • wordpress 娱乐插件seo技术优化服务
  • wordpress做小说网站吗三丰云服务器
  • 网站部署设计网络规划设计师教程读后感
  • 响应式网站设计与实现论文郑州app开发哪家好
  • 设计师学编程能自己做网站吗重庆短视频制作公司
  • 做坏事小视频网站邢台集团网站建设报价
  • 90做网站自媒体营销推广方案
  • 嘉兴网站公司哪家好企业网站的制作用到的技术
  • it网站建设视觉设计网站推荐
  • 南海营销网站开发wordpress 多站点管理
  • 新河网站什么是网站后期建设
  • 怎么样让网站正常解析怎么去做网络推广
  • 微网站如何做推广做网站一个月能赚多少钱
  • 信息技术会考做网站做网站 怎么备案
  • 建网站内容意大利设计网站
  • 揭阳响应式网站价格wordpress 导航网站模板下载
  • 做网站设计的广告公司比较实用的h5网页建设网站