TypechoJoeTheme

IT技术分享

统计
搜索到 38 篇与 的结果
2016-04-24

访问者模式(Visitor)——23种设计模式之行为型模式

访问者模式(Visitor)——23种设计模式之行为型模式
在软件构建过程中,由于需求的改变,某些类 层次结构中常常需要增加新的行为(方法),如果 直接在基类中做这样的更改,将会给子类带来 很繁重的变更负担,甚至破坏原有设计。如何在不改变类层次结构的前提下,在运行 时根据需要透明地为类层次结构上的各个类动 态添加新的操作,从而避免上...
顿搜
2016-04-24

C #,C/C++,Java

666 阅读
0 评论
2016年04月24日
666 阅读
0 评论
2016-04-23

状态模式(State)——23种设计模式之行为型模式

状态模式(State)——23种设计模式之行为型模式
在很多情况下,一个对象的行为取决于一个或多个动态变化的属性,这样的属性叫做状态,这样的对象为有状态的对象。对象拥有不同的状态,往往会行使不同的行为。 对象从事先定好的一系列值中取出。当一个这 样的对象与外部事件产生互动时,其内部状态会改变,从而使得系统行为也随之发生变化。在...
顿搜
2016-04-23

C #,C/C++,Java

689 阅读
0 评论
2016年04月23日
689 阅读
0 评论
2016-04-23

备忘录模式(Memento)——23种设计模式之行为型模式

备忘录模式(Memento)——23种设计模式之行为型模式
在软件构建过程中,某些对象的状态在转换过 程中,可能由于某种需要,要求程序能够回溯 到对象之前处于某个点时的状态。如果使用一 些公用接口来让其他对象得到对象的状态,便 会暴露对象的细节实现。如何实现对象状态的良好保存与恢复?但同时又不会因此而破坏对象本身的封装性?在不破坏封...
顿搜
2016-04-23

C #,C/C++,Java

608 阅读
0 评论
2016年04月23日
608 阅读
0 评论
2016-04-22

调停者模式/中介者模式(Mediator)——23种设计模式之行为型模式

调停者模式/中介者模式(Mediator)——23种设计模式之行为型模式
在软件构建过程中,经常会出现多个对象互相关联交互的情况,对象之间常常会维持一种复杂的引用关系,如果遇到一些需求的更改,这种直接的引用关系将面临不断的变化。在这种情况下,我们可使用一个“中介对 象”来管理对象间的关联关系,避免相互交互的对象之间的紧耦合引用关系,从而更好地抵御...
顿搜
2016-04-22

C #,C/C++,Java

626 阅读
0 评论
2016年04月22日
626 阅读
0 评论
2016-04-22

迭代器模式(Iterator)——23种设计模式之行为型模式

迭代器模式(Iterator)——23种设计模式之行为型模式
在软件构建过程中,聚集对象内部结构常常变化各异。但对于这些聚集对象,我们希望在不暴露其内部结构的同时,可以让外部客户代码透明地访问其中包含的元素;同时这种“透明遍历”也为“同一种算法在多种聚集对象上进行操作”提供了可能。将对聚集对象的访问和遍历从聚集对象中分离出来并放入一个...
顿搜
2016-04-22

C #,C/C++,Java

693 阅读
0 评论
2016年04月22日
693 阅读
0 评论
2016-04-22

责任链模式(Chain of Responsibility)——23种设计模式之行为型模式

责任链模式(Chain of Responsibility)——23种设计模式之行为型模式
在软件构建过程中,一个请求可能被多个对象处理,但是每个请求在运行时只能有一个接受者,如果显式指定,将必不可少地带来请求发送者与接受者的紧耦合。如何使请求的发送者不需要指定具体的接受者? 让请求的接受者自己在运行时决定来处理请求, 从而使二者解藕。使多个对象都有机会处理请求,...
顿搜
2016-04-22

C #,C/C++,Java

689 阅读
0 评论
2016年04月22日
689 阅读
0 评论
2016-04-21

模板方法模式(Template Method)——23种设计模式之行为型模式

模板方法模式(Template Method)——23种设计模式之行为型模式
我们经常会面临许多框架结构上相 似,但是却在细节上稍有不同的代码。另外,程序中有些规则和约束,我们希望不会被违反。定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。Template Method使得子类可以不改变一个算 法的结构即可重定义该算法的某些特定步骤。这是一个很...
顿搜
2016-04-21

C #,C/C++,Java

596 阅读
0 评论
2016年04月21日
596 阅读
0 评论
2016-04-21

解释器模式(Interpreter)——23种设计模式之行为型模式

解释器模式(Interpreter)——23种设计模式之行为型模式
在软件构建过程中,如果某一特定领域的问题比较复杂,类似的模式不断重复出现,如果使用普遍的编程方式来实现将面临非常频繁的变化。在这种情况下,将特定领域的问题表达为某种语法规则下的句子,然后构建一个解释器来解释这样的句子,从而达到解决问题的目的。如果一种特定类型的问题发生的频率...
顿搜
2016-04-21

C #,C/C++,Java

629 阅读
0 评论
2016年04月21日
629 阅读
0 评论
2016-04-21

代理模式(Proxy)——23种设计模式之结构型模式

代理模式(Proxy)——23种设计模式之结构型模式
在面向对象系统中,有些对象由于某种原因(如 对象创建的开销大,或者某些操作需要安全控 制,或者需要进程外的访问等),直接访问会给 使用者、或者系统结构带来很多麻烦。如何在不失去透明操作对象的同时来管理/控制 这些对象特有的复杂性?增加一层间接层是软件开发中常见的解决方式。在...
顿搜
2016-04-21

C #,C/C++,Java

558 阅读
0 评论
2016年04月21日
558 阅读
0 评论
2016-04-20

享元模式(Flyweight)——23种设计模式之结构型模式

享元模式(Flyweight)——23种设计模式之结构型模式
面向对象很好地解决了系统抽象性的问题,同时在大多数情况下,也不会损及系统的性能。 但在某些特殊的应用中,由于对象的数量太大, 采用面向对象会给系统带来难以承受的内存开销。比如图形应用中的图元等对象、字处理应 用中的字符对象等。采用纯粹对象方案的问题在于大量细粒度的对 象会很...
顿搜
2016-04-20

C #,C/C++,Java

520 阅读
0 评论
2016年04月20日
520 阅读
0 评论
2016-04-19

组合模式(Composite)——23种设计模式之结构型模式

组合模式(Composite)——23种设计模式之结构型模式
在面向对象的系统中,我们常会遇到一类具有 “容器”特征的对象-->它们在充当对象的同时, 又是其他对象的容器。如果我们要对这样的对象容器进行处理,将面 临比较复杂的递归过程。客户代码过多地依赖于对象容器复杂的内部实现结构, 对象容器内部实现结构(而非抽象接口)的变化将...
顿搜
2016-04-19

C #,C/C++,Java

484 阅读
0 评论
2016年04月19日
484 阅读
0 评论
2016-04-18

桥接模式(Bridge)——23种设计模式之结构型模式

桥接模式(Bridge)——23种设计模式之结构型模式
在软件系统中,某些类型由于自身的逻辑,它具有两个或多个维度的变化,那么如何应对这种“多维度的变化”?如何利用面向对象的技术来使得该类型能够轻松的沿着多个方向进行变化,而又不引入额外的复杂度?要做到“抽象(接口)与实现分离”,最常用的办法是 定义一个抽象类,然后在子类中提供实...
顿搜
2016-04-18

C #,C/C++,Java

2,961 阅读
2 评论
2016年04月18日
2,961 阅读
2 评论
2016-03-30

JAVA语言中克隆CLONE方法详解,浅克隆与深克隆的研究

JAVA语言中克隆CLONE方法详解,浅克隆与深克隆的研究
一、基本概念首先介绍两个概念1、cloneJava 的所有类都是从java.lang.Object类继承而来的,而Object类提供protected Object clone()方法对对象进行复制,子类当然也可以把这个方法置换掉,提供满足自己需要的复制方法。对象的复制有一...
顿搜
2016-03-30

Java

707 阅读
0 评论
2016年03月30日
707 阅读
0 评论