![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
设计模式
HSBOY86
网络,系统开发
展开
-
模式-创建型模式-单件模式
一、什么是单件模式(singleton) 单件模式是一种用于确保整个应用程序中只有一个类实例且这个实例所占资源在整个应用程序中是共享时的程序设计方法(根据实际情况,可能需要几个类实例)。在某些情况下,这种程序设计方法是很有用处的。二、单件模式应该使用在什么场合 当需要控制一个类的实例数量且调用者可以从一个公共的众所周知的访问点访问时。三、单件模式类的创建 我们分两种方式来讨论一个单件类的创建,一是将一个类的公共构造函数改为私有,另一种方式是保留类的公共构造函数,通过一个静态成员来决翻译 2010-06-28 10:58:00 · 149 阅读 · 0 评论 -
模式-结构型模式-外观模式
<br />它为子系统中的一组接口提供一个统一的高层接口。使用子系统更容易使用。 <br /><br />protected void Facadefunction() //外观模式<br /> {<br /> Facade facade = new Facade();<br /> facade.MethodA();<br /> facade.MethodB();<br /> }<br /><br />public class翻译 2010-06-29 15:18:00 · 109 阅读 · 0 评论 -
模式-结构型模式-装饰模式
<br />装饰模式是在不必改变原类文件和使用继承的情况下,动态的扩展一个对象的功能。它是通过创建一个包装对象,也就是装饰<br /><br />来包裹真实的对象。<br />装饰模式的特点;<br />(1) 装饰对象和真实对象有相同的接口。这样客户端对象就可以以和真实对象相同的方式和装饰对象交互。<br />(2) 装饰对象包含一个真实对象的索引(reference)<br />(3) 装饰对象接受所有的来自客户端的请求。它把这些请求转发给真实的对象。<br />(4) 装饰对象翻译 2010-06-29 15:13:00 · 137 阅读 · 0 评论 -
模式-结构型模式-桥接模式
概述 软件开发网 www.mscto.com在软件系统中,某些类型由于自身的逻辑,它具有两个或多个维度的变化,那么如何应对这种“多维度的变化”?如何利用面向对象的技术来使得该类型能够轻松的沿着多个方向进行变化,而又不引入额外的复杂度?这就要使用 Bridge 模式。意图将抽象部分与实现部分分离,使它们都可以独立的变化。 protected void Abstractionfunction() //桥接模式 { Abstraction abstraction翻译 2010-06-29 13:39:00 · 140 阅读 · 0 评论 -
模式-结构型模式-代理模式
<br />代理对象角色内部含有对真实对象的引用,从而可以操作真实对象,同时代理对象提供与真实对象相同的接口以便在任何时刻<br /><br />都能代替真实对象。同时,代理对象可以在执行真实对象操作时,附加其他的操作,相当于对真实对象进行封装。<br /><br />protected void Subjectfunction() //代理模式<br /> {<br /> Subject subject = new RealSubject();<br />翻译 2010-06-29 16:11:00 · 139 阅读 · 0 评论 -
模式-结构型模式-享元模式
它为子系统中的一组接口提供一个统一的高层接口。使用子系统更容易使用。 protected void Facadefunction() //外观模式 { Facade facade = new Facade(); facade.MethodA(); facade.MethodB(); }public class SubSystemOne{ public void MethodOn翻译 2010-06-29 16:02:00 · 116 阅读 · 0 评论 -
模式-创建型模式-抽象工厂
<br />意图<br />提供一个创建一系列相关活相互依赖对象的接口,而无需指定他们具体的类。<br /><br /> <br />protected void AbstractFactory() //抽象工厂<br /> {<br /> AbstractFactory factory1 = new ConcreateFactory1();<br /> Client c1 = new Client(factory1);<br />翻译 2010-06-28 13:35:00 · 145 阅读 · 0 评论 -
模式-创建型模式-原型模式
<br />用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象.<br /> Prototype模式允许一个对象再创建另外一个可定制的对象,根本无需知道任何如何创建的细节,工作原理是:通过将一个<br /><br />原型对象传给那个要发动创建的对象,这个要发动创建的对象通过请求原型对象拷贝它们自己来实施创建。 <br /><br />protected void Prototypefunction()//原型模式<br /> {<br /> Concr翻译 2010-06-28 14:06:00 · 133 阅读 · 0 评论 -
模式-创建型模式-工厂方法模式
<br />工厂方法模式是简单工厂模式的衍生,解决了许多简单工厂模式的问题。首先完全实现‘开-闭 原则’,实现了可扩展。其次更复杂的层次结构,可以应用于产品结果复杂的场合。<br /> 工厂方法模式的对简单工厂模式进行了抽象。有一个抽象的Factory类(可以是抽象类和接口),这个类将不在负责具体的产品生产,而是只制定一些规范,具体的生产工作由其子类去完成。在这个模式中,工厂类和产品类往往可以依次对应。即一个抽象工厂对应一个抽象产品,一个具体工厂对应一个具体产品,这个具体的工厂就负责生产对应的产品。<翻译 2010-06-28 14:01:00 · 176 阅读 · 0 评论 -
模式-创建型模式-建造者模式
<br />建造模式是对象的创建模式。建造模式可以将一个产品的内部表象与产品的生成过程分割开来,从而可以使一个建造过程生成具有不同的内部表象的产品对象。<br /><br />一个产品常有不同的组成成分作为产品的零件,它们通常叫做产品的内部表象。不同的产品可以有不同的内部表象,也就是不同的零件。使用建造模式可以使客户不需要知道所生成的产品的对象有哪些零件,每个产品的对应零件彼此有何不同,是怎么建造出来的,以及怎样组成产品.<br /><br />protected void Builderfunct翻译 2010-06-28 13:45:00 · 112 阅读 · 0 评论 -
模式-结构型模式-组合模式
组合模式(Composite Pattern)有时候又叫做部分-整体模式,它使我们树型结构的问题中,模糊了简单元素和复杂元素的概念,客户程序可以向处理简单元素一样来处理复杂元素,从而使得客户程序与复杂元素的内部结构解耦。 组合模式让你可以优化处理递归或分级数据结构。有许多关于分级数据结构的例子,使得组合模式非常有用武之地。关于分级数据结构的一个普遍性的例子是你每次使用电脑时所遇到的:文件系统。文件系统由目录和文件组成。每个目录都可以装内容。目录的内容可以是文件,也可以是目录。按照这种方式,计翻译 2010-06-29 14:36:00 · 129 阅读 · 0 评论