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

网站加水印wordpress 清新主题

网站加水印,wordpress 清新主题,互联网产品设计,网络直接营销渠道java设计模式 订阅模式当我们必须使用对象的树状分层结构时#xff0c;复合设计模式非常有用。 它使我们能够统一对待单个对象和对象组成。 它属于结构设计模式的范畴#xff0c;因为它将对象组合成树形结构以表示部分整个层次结构。 UML表示形式#xff1a; 复合模式的UM… java设计模式 订阅模式 当我们必须使用对象的树状分层结构时复合设计模式非常有用。 它使我们能够统一对待单个对象和对象组成。 它属于结构设计模式的范畴因为它将对象组合成树形结构以表示部分整个层次结构。 UML表示形式 复合模式的UML表示形式如下 哪里 组件是接口或抽象类 它是所有类集的超类型 复合类它定义了Component的具体实现并保存其他子组件的实例 叶子类叶子代表非复合类型即它不是由其他组件组成的 请注意 一个合成对象可以包含其他合成对象这通常被称为递归合成。 此外 Leaf和Composite类都实现扩展为抽象类 Component接口。 这使我们能够通过多态统一地处理复合对象和非复合对象。 叶子和复合对象符合Component中定义的一组共享行为。 实施复合模式 让我们构建一个UI菜单层次结构其中每个菜单都可以具有子菜单。 我们将使用复合设计模式来实现此层次结构。 首先让我们定义MenuComponent类 public abstract class MenuComponent {private String name;private String url;//constructor, getters, setterspublic void add(MenuComponent component) {throw new UnsupportedOperationException();}public abstract void displayMenu();   } 我们希望对聚合的菜单和单个菜单项进行统一处理因此我们在MenuComponent类中抽象了displayMenu方法。 现在让我们实现MenuItem类 public class MenuItem extends MenuComponent {public MenuItem(String name, String url) {super(name, url);}Overridepublic void displayMenu() {System.out.println(getName() : getUrl());}       } MenuItem将是leaf元素并且不能包含任何子菜单。 另一方面 Menu由MenuComponent对象组成。 换句话说 菜单可以同时包含Menu和MenuItem对象 public class Menu extends MenuComponent {ListMenuComponent subMenus new ArrayList();public Menu(String name, String url) {super(name, url);}Overridepublic void add(MenuComponent menuComponent) {this.subMenus.add(menuComponent);}Overridepublic void displayMenu() {System.out.println(getName() : getUrl() \n);this.subMenus.forEach(MenuComponent::displayMenu);} }测试我们的实施 客户端代码应与MenuComponent抽象一起使用。 让我们创建菜单项的层次结构 MenuComponent allTutorials new Menu(Tutorials, /tutorials);MenuComponent spring new Menu(Spring, /spring); MenuComponent versioning new Menu(Version Management, /versioning);MenuComponent java new MenuItem(Java, /java);allTutorials.add(spring); allTutorials.add(versioning); allTutorials.add(java);spring.add(new MenuItem(Spring Core, /core)); spring.add(new MenuItem(Spring Boot, /boot));MenuComponent git new Menu(Git, /git);MenuComponent svn new MenuItem(SVN, /svn);       versioning.add(svn); versioning.add(git);git.add(new MenuItem(Introduction to Git, /intro)); git.add(new MenuItem(Github Integration, /github));allTutorials.displayMenu(); 上面的代码将产生以下输出 Tutorials:/tutorialsSpring:/springSpring Core : /core Spring Boot : /bootVersion Management:/versioningSVN : /svn Git:/gitIntroduction to Git : /intro Github Integration : /githubJava : /java结论 在本教程中我们探索了复合设计模式。 这是一种结构模式在尝试创建对象的层次结构时会派上用场。 它有助于我们对复合对象和非复合对象进行统一处理。 翻译自: https://www.javacodegeeks.com/2019/08/composite-design-pattern-in-java.htmljava设计模式 订阅模式
http://www.sadfv.cn/news/199775/

相关文章:

  • 佛山个人网站建设报个计算机培训班多少钱
  • 建设网站需要先构建好模型网站建设维护工作
  • 网店装修网站博罗网站建设公司
  • 网站主页特效欣赏微信开放平台官方网站
  • wp建站优化阿里邮箱企业版入口
  • 网站规划与建设大作业答案如何把网站程序做授权网址访问
  • 网站开发公司模板定制家具品牌排行榜前十名
  • 国外互联网资讯网站张家港网站网络公司
  • 什么叫网站app网站怎么做才吸引人
  • 北京南站在几环爱站网关键词怎么挖掘
  • 杭州专业网站排名优化做游戏网站赚钱么
  • 公司网站如何做seo今天31个省新增最新消息视频
  • 建立网站的意义宇宙设计网站推荐
  • 网站做线支付平台系统多少钱凡客达人的运作模式
  • 海南省建设银行官方网站招聘温州网站制作多少钱
  • 国内it培训机构排名网站建设和seo
  • 黑龙江省建设安全协会网站外汇网站怎么做优化
  • 建瓯做网站的公司乐清网络问效平台
  • 怎么导入网站源码最新汽油价格调整最新消息
  • 电子商务网站建设考试重点高端品牌网站建设建议
  • 如何自己做的网站推广优化网站排名
  • 快速知彼网络网站建设国内优秀网站网址
  • 自己视频怎么上传网站炫彩发光字制作
  • 网站建设证据保全全国信息企业查询系统官网
  • 中铁广州建设有限公司网站驻马店 市网站建设
  • 合肥建筑网站大全成都高端网站建设哪家好
  • 长春网络建站企业网站建站费用
  • wordpress软件门户主题网站建设优化公司哪家好
  • 网站开发设计实训 报告合肥网站建设方案
  • 宝安做网站哪家好揭阳市seo上词外包