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

岳阳建网站phpmysql做网站

岳阳建网站,phpmysql做网站,网站建设标书,公司概况简介组合模式 组合模式#xff08;Composite Pattern#xff09;允许你将对象组合成树形结构来表示“部分-整体”的层次结构。组合模式让客户端可以统一地处理单个对象和组合对象。在这个模式中#xff0c;组合对象#xff08;Composite#xff09;和叶子对象#xff08;Lea…组合模式 组合模式Composite Pattern允许你将对象组合成树形结构来表示“部分-整体”的层次结构。组合模式让客户端可以统一地处理单个对象和组合对象。在这个模式中组合对象Composite和叶子对象Leaf会实现相同的接口。 下面是一个使用组合模式的简单案例我们将构建一个文件系统的表示其中可以包含文件夹组合对象和文件叶子对象。 首先定义一个公共接口 IFileSystemEntry该接口将由文件夹和文件实现 java interface IFileSystemEntry { void list(); } 然后定义叶子对象 File它实现了 IFileSystemEntry 接口java class File implements IFileSystemEntry { private String name; public File(String name) { this.name name; } Override public void list() { System.out.println(File: name); } }接着定义组合对象 Folder它也实现了 IFileSystemEntry 接口并且可以包含多个 IFileSystemEntry 对象即文件夹或文件 java import java.util.ArrayList; import java.util.List; class Folder implements IFileSystemEntry { private String name; private ListIFileSystemEntry children new ArrayList(); public Folder(String name) { this.name name; } public void add(IFileSystemEntry entry) { children.add(entry); } Override public void list() { System.out.println(Folder: name); for (IFileSystemEntry entry : children) { entry.list(); } } }最后我们可以构建一个包含文件夹和文件的文件系统并演示如何使用 list() 方法来列出所有文件和文件夹 java public class CompositePatternDemo { public static void main(String[] args) { // 创建文件夹和文件 Folder root new Folder(root); Folder folder1 new Folder(folder1); Folder folder2 new Folder(folder2); File file1 new File(file1.txt); File file2 new File(file2.txt); // 组织结构 root.add(folder1); root.add(folder2); folder1.add(file1); folder2.add(file2); // 打印文件系统 root.list(); } }输出结果 Folder: root Folder: folder1 File: file1.txt Folder: folder2 File: file2.txt这个示例展示了组合模式的基本应用即如何通过递归调用 list() 方法来统一处理文件和文件夹的列表展示。 适配器模式 适配器模式Adapter Pattern是一种结构型设计模式它允许一个接口通常是新的或现有的与另一个不兼容的接口一起工作。适配器模式主要用于解决接口不匹配的问题让原本由于接口不兼容而不能一起工作的类可以一起工作。 下面我将通过一个简单的例子来展示适配器模式的应用。假设我们有一个老式的电源插座两孔插座但我们想使用一个需要三孔插座的电器设备。为了解决这个问题我们可以使用一个电源适配器来转换插座类型。 定义接口 首先我们定义两个接口分别代表两孔插座和三孔插座 java // 两孔插座接口 public interface TwoPinSocket { void powerSupply(); } // 三孔插座接口 public interface ThreePinSocket { void powerSupply(); }实现接口 然后我们实现这两个接口。假设我们有一个真实存在的两孔插座实现但没有直接的三孔插座实现因为我们要模拟的是通过适配器来适配的情况 java // 两孔插座实现 public class RealTwoPinSocket implements TwoPinSocket { Override public void powerSupply() { System.out.println(Providing power through two pins.); } } // 假设没有直接的三孔插座实现我们通过适配器来适配 适配器类 接下来我们创建一个适配器类这个类将两孔插座适配为三孔插座 java public class Adapter extends RealTwoPinSocket implements ThreePinSocket { // 注意这里我们继承自RealTwoPinSocket但实现ThreePinSocket接口 // 适配器内部使用两孔插座的供电能力 Override public void powerSupply() { // 调用两孔插座的供电方法 super.powerSupply(); // 可以在这里添加额外的逻辑来模拟三孔插座特有的功能如果有的话 System.out.println(Adapting power for three pins.); } }客户端代码 最后我们编写客户端代码来演示如何使用这个适配器 java public class Client { public static void main(String[] args) { // 创建一个两孔插座的实例 TwoPinSocket twoPinSocket new RealTwoPinSocket(); // 但我们需要一个三孔插座所以我们使用适配器 ThreePinSocket threePinSocket new Adapter(); // 使用三孔插座供电 threePinSocket.powerSupply(); // 输出: // Providing power through two pins. // Adapting power for three pins. } }在这个例子中Adapter 类将 RealTwoPinSocket 的功能适配成了 ThreePinSocket 接口所要求的形式使得原本只能接受三孔插座的电器设备可以通过这个适配器使用两孔插座进行供电。这就是适配器模式的基本思想。
http://www.hkea.cn/news/14358751/

相关文章:

  • 万户做网站如何杭州seo中心
  • 自己用笔记本做网站企业网站建设的必要性和重要性
  • 广州网站搭建哪家好手机和pc合一的网站
  • 自己做网站投放有流量么网页怎么打不开
  • 合肥网站建设网页设计郑州网站制作案例
  • 情女照片做杯子网站朝阳seo网站建设
  • html网站开发代码搭建购物商城
  • 苏州吴中长桥网站建设自由策划企业网站管理系统破解版
  • 网站营销方案设计公司网站织梦
  • cocos creator做网站软考高级职称哪个好考
  • win7主机做网站宁波网上办事大厅
  • 网站建设可以经营吗广州网站制作设计公司
  • 诸城易讯网站建设服务中心seo技术教程博客
  • 怎么做网站缩略图麻栗坡网站建设
  • 成都都网站建设网站建设平台汉龙
  • 网站文件夹没有权限做网页兼职的网站
  • 建设网站前的市场分析包括国内如何做国外网站的兼职项目
  • 来宾网站制作公司天津百度网络推广
  • 网站云解析域名解析犀牛云做网站骗人
  • wordpress分类目录导航上海知名的seo推广咨询
  • 能够做渗透的网站网站建设和管理专业
  • 百度站长平台官网死链提交c2c模式的概念
  • 专门做图片的网站cms百度搜索提交入口
  • 网站模板库免费建网站有哪些文件夹
  • 建设外贸网站的细节保定市最新消息今天
  • seo是做网站广州网站建设知名乐云seo
  • 怎么申请网站详细步骤网站建设遇到的问题及对策
  • 网站游戏制作开发东莞做网站seo优化
  • 研发网站要多久数学网站怎么做
  • 浙江省建设监理管理协会网站四川红叶建设有限公司网站