设计模式详解:创造型模式实例解析

需积分: 49 7 下载量 49 浏览量 更新于2024-09-13 2 收藏 25KB DOCX 举报
一个对象,虽然名字各不相同,但老公只有一个。单例模式确保某一个类只有一个实例,并提供一个全局访问点。防止其他对象对其实例的多线程并发访问,保证了对象状态的一致性。 结构型模式 6、COMPOSITE—追求MM的过程中,可能会遇到一些障碍,比如她的闺蜜、室友等,她们可能成为我的朋友或者敌人。我把这些人都看作是朋友的组成部分,有的是直接的朋友,有的是朋友的朋友,这样我就有了一个朋友的组合。 组合模式:将对象组织成树形结构来表示部分整体关系,使得用户对单个对象和组合对象的使用具有一致性。组合模式可以用来表示具有树形结构的层次对象。在处理对象的集合时,它简化了对象间的相互连接,同时允许用户统一地处理单个对象和对象集合。 7、DECORATOR—为了追求MM,我要把自己包装得更好,可能是穿上一套帅气的衣服,或者是带上一个时尚的墨镜,这些装饰都可以让我更具吸引力,这就是装饰自己Decorator的过程。 装饰模式:动态地给一个对象添加一些额外的职责。就增加功能来说,装饰模式比生成子类更灵活。装饰模式可以独立于类的继承体系来扩展对象的功能。 8、ADAPTER—不同的MM可能喜欢不同的音乐,我的手机音乐播放器需要支持各种格式,这就需要用到Adapter模式,将不同格式的音乐文件转换成我的播放器能识别的格式。 适配器模式:将一个类的接口转换成客户希望的另一个接口,使原本由于接口不兼容而不能一起工作的那些类可以一起工作,适配器模式既可以作为类结构型模式,也可以作为对象结构型模式。 9、BRIDGE—追求MM时,我可能会用短信、电话、微信等多种方式,这些通信方式就像桥一样,帮我传递信息。通信方式与信息内容是分离的,这就是Bridge模式。 桥接模式:将抽象部分与实现部分分离,使它们可以独立变化。这种类型的设计模式属于结构型模式,它使抽象和实现之间可以松耦合。 10、FACADE—面对MM的亲友团,我只需要展现一个友好、一致的对外形象,这就是我的门面Facade,不用让他们知道我内心的复杂。 外观模式:为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。 行为型模式 11、STRATEGY—追求MM时,我会根据情况选择不同的策略,可能是浪漫攻势,也可能是朋友路线,这就是策略模式,定义了算法族,分别封装起来,让它们之间可以互相替换。 策略模式:定义了一系列的算法,并将每一个算法封装起来,使它们可以互相替换。策略模式让算法的变化独立于使用算法的客户。 12、TEMPLATE METHOD—每个追求MM的步骤都有大致的框架,比如先认识,再约会,然后表白,这就是模板方法模式,定义了操作中的算法骨架,而将一些步骤延迟到子类中。 模板方法模式:在一个方法中定义一个算法的框架,而将一些步骤延迟到子类中。使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 13、.iterator—