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

用js做自适应网站视频剪辑培训

用js做自适应网站,视频剪辑培训,网站建设具备什么条件,seo学习结构型模式 组合模式#xff08;Composite Pattern#xff09; 组合模式使得用户对单个对象和组合对象的使用具有一致性。 有时候又叫做部分-整体模式#xff0c;它使我们树型结构的问题中#xff0c;模糊了简单元素和复杂元素的概念#xff0c;客户程序可以像处理简单元…结构型模式 组合模式Composite Pattern 组合模式使得用户对单个对象和组合对象的使用具有一致性。 有时候又叫做部分-整体模式它使我们树型结构的问题中模糊了简单元素和复杂元素的概念客户程序可以像处理简单元素一样来处理复杂元素,从而使得客户程序与复杂元素的内部结构解耦。 组合模式让你可以优化处理递归或分级数据结构。有许多关于分级数据结构的例子使得组合模式非常有用武之地。关于分级数据结构的一个普遍性的例子是你每次使用电脑时所遇到的:文件系统。文件系统由目录和文件组成。每个目录都可以装内容。目录的内容可以是文件也可以是目录。按照这种方式计算机的文件系统就是以递归结构来组织的。如果你想要描述这样的数据结构那么你可以使用组合模式Composite。 适用场景 管理层次结构 当你需要表示对象的部分-整体层次结构时可以使用组合模式。 统一单个对象和组合对象的处理方式 当你希望客户端无需区分单个对象和组合对象即可操作它们时。 简化代码结构 通过将统一的操作应用于组合结构的所有元素可以简化客户端代码。 组合模式的核心组件 组件Component 所有参与组合模式的对象都需要实现一个‘组件’接口。这个接口规定了一系列的操作如添加、删除、以及获取子元素等确保所有的对象都可以被一致对待。 叶节点Leaf 在组合模式中叶节点代表没有子节点的对象。它是组合结构的基本元素不能再被分解。 复合节点Composite 与叶节点相对应复合节点是那些含有子节点的对象。它实现了组件接口中与子节点操作相关的方法如增加或删除子节点。 实现示例Java 以下是一个简单的组合模式的实现示例展示如何将对象组织成树形结构并统一处理。 1. 定义组件接口 public interface Component {void operation();void add(Component component);void remove(Component component);Component getChild(int i); }2. 定义叶节点类 public class Leaf implements Component {private String name;public Leaf(String name) {this.name name;}public void operation() {System.out.println(Leaf name : operation);}public void add(Component component) {throw new UnsupportedOperationException();}public void remove(Component component) {throw new UnsupportedOperationException();}public Component getChild(int i) {throw new UnsupportedOperationException();} }3. 定义组合类 import java.util.ArrayList; import java.util.List;public class Composite implements Component {private ListComponent children new ArrayList();private String name;public Composite(String name) {this.name name;}public void operation() {System.out.println(Composite name : operation);for (Component component : children) {component.operation();}}public void add(Component component) {children.add(component);}public void remove(Component component) {children.remove(component);}public Component getChild(int i) {return children.get(i);} }4. 客户端代码 public class Client {public static void main(String[] args) {Composite root new Composite(root);Composite branch1 new Composite(branch1);Composite branch2 new Composite(branch2);Leaf leaf1 new Leaf(leaf1);Leaf leaf2 new Leaf(leaf2);root.add(branch1);root.add(branch2);branch1.add(leaf1);branch2.add(leaf2);root.operation();} }优点 简化客户端代码 客户端可以统一对待单个对象和组合对象。 增加新类型的组件容易 在不修改现有代码的情况下可以很容易地添加新类型的组件。 形成树形结构 明确地定义了复杂对象的组成部分和子部件的层次关系。 缺点 设计复杂 设计组合结构时需要仔细考虑整体与部分的关系可能会导致设计上的复杂性。 过度泛化 组件接口的设计可能过于泛化导致一些组件实现了它们不需要的操作。 类图 Client|v Component ---- Composite|vLeaf总结 组合模式提供了一种灵活的结构用于表示具有层次结构的对象。它使得客户端可以统一地处理单个对象和组合对象简化了客户端代码的复杂性。这种模式特别适合那些需要处理对象集合的场景例如图形用户界面组件、文件系统等。
http://www.hkea.cn/news/14361893/

相关文章:

  • 丽江市住房与城乡建设局网站郑州建筑公司排名
  • idc销售网站php源代码关注公众号在哪里查找
  • 承德建设厅网站网站后台更新内容后
  • 网站正在建设中提示页商城建设公司
  • 用asp.net做简易网站wordpress腾讯云cos插件
  • 网站开发如何学习医疗器械管理软件
  • 简单手机网站源码下载宁波网站建设 华企立方
  • 备案的域名做电影网站吗搜讯网站开发
  • 个人成立公司怎么做企业网站公司的网站建设费用入什么科目
  • 石家庄设计网站公司安徽网站线上开发公司
  • 创新的企业网站制作网络营销推广网站
  • canvas做的手机网站做淘宝需要的网站
  • php网站建设外国参考文献昆明app制作的公司
  • python做互金网站制作网页的基本步骤
  • 中企动力是怎么建设网站的北京网站建设公司动感
  • 秦皇岛城乡建设局网站wordpress改页脚
  • 济南网站建设公司按需定制速递物流系网站建设与维护
  • 兰州市生态建设管理局网站北京市住房城乡建设部网站首页
  • 网站页脚需要放什么用开发一个相亲软件需要多少钱
  • 怎样设计网站主页长春网站建设技术外包
  • 找别人做网站注意什么百度招聘网最新招聘信息
  • 滕州做网站五年级下册数学优化设计答案
  • 济南网站建设网站登录页做多大尺寸的
  • 刚学完网站开发wordpress如何制作网页
  • 佛山网站建设公司有哪些wordpress restfulapi
  • 网站建设600元包做a暧小视频在线观看网站
  • ftp网站地图怎么做网站开发与技术
  • 腾讯做的电子商务网站网站规划与建设策划书
  • 妇联网站建设背景海口网站建设q.479185700惠
  • 阿里巴巴做网站申请佛山专业建设网站平台