一、概述
用一个中介对象(中介者)来封装一系列的对象交互,中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。中介者模式又称为调停者模式,它是一种对象行为型模式。
二、适用场景
协调多个对象之间的交互。
三、UML类图
四、参与者
1、Mediator(抽象中介者):它定义一个接口,该接口用于与各同...
分类:
编程语言 时间:
2014-12-02 22:33:50
阅读次数:
275
1 #include 2 #include 3 #include 4 5 using namespace std; 6 7 const int nn=102; 8 int a[nn]; 9 10 int quick_partition(int i,int j);11 void quick...
分类:
编程语言 时间:
2014-12-02 22:29:58
阅读次数:
250
java.io.Serializable浅析 Java API中java.io.Serializable接口源码:1 public interface Serializable {2 } 类通过实现java.io.Serializable接口可以启用其序列化功能。未实现次接口的类无法使其任何状态.....
分类:
编程语言 时间:
2014-12-02 22:28:38
阅读次数:
255
去年年底有一个Guice的研究计划,可惜由于工作“繁忙”加上实际工作中没有用上导致“无疾而终”,最终只是完成了Guice的初步学习教程,深入的研究没有继续进行下去。最近一直用的比较多的就是java.util.concurrent(J.U.C),实际上这块一直也没有完全深入研究,这次准备花点时间研究下...
分类:
编程语言 时间:
2014-12-02 22:25:08
阅读次数:
232
前面的章节主要谈谈原子操作,至于与原子操作一些相关的问题或者说陷阱就放到最后的总结篇来整体说明。从这一章开始花少量的篇幅谈谈锁机制。上一个章节中谈到了锁机制,并且针对于原子操作谈了一些相关的概念和设计思想。接下来的文章中,尽可能的深入研究锁机制,并且理解里面的原理和实际应用场合。尽管synchron...
分类:
编程语言 时间:
2014-12-02 22:25:59
阅读次数:
203
从相对简单的Atomic入手(java.util.concurrent是基于Queue的并发包,而Queue,很多情况下使用到了Atomic操作,因此首先从这里开始)。很多情况下我们只是需要一个简单的、高效的、线程安全的递增递减方案。注意,这里有三个条件:简单,意味着程序员尽可能少的操作底层或者实现...
分类:
编程语言 时间:
2014-12-02 22:24:54
阅读次数:
197
Javascript 中创建对象,可以有很多种方法。Object构造函数/对象字面量:抛开设计模式不谈,使用最基本的方法,就是先调用Object构造函数创建一个对象,然后给对象添加属性.1 var student = new Object();2 student.name = "xi...
分类:
编程语言 时间:
2014-12-02 22:24:12
阅读次数:
313
formal specification:In computer science, formal specifications are mathematically based techniques whose purpose are to help with the implementation ...
分类:
编程语言 时间:
2014-12-02 22:23:30
阅读次数:
158
一、装饰者模式1、定义及作用 该模式以对客户端透明的方式扩展对象的功能。2、涉及角色 抽象构件角色:定义一个抽象接口,来规范准备附加功能的类。 具体构件角色:将要被附加功能的类,实现抽象构件角色接口。 抽象装饰者角色:持有对具体构件角色的引用并定义与抽象构件角色一致的接口。 具体装饰角色:实现抽象装...
分类:
编程语言 时间:
2014-12-02 22:22:01
阅读次数:
282
在这一部分开始讨论数组原子操作和一些其他的原子操作。AtomicIntegerArray/AtomicLongArray/AtomicReferenceArray的API类似,选择有代表性的AtomicIntegerArray来描述这些问题。int get(int i)获取位置i的当前值。很显然,由...
分类:
编程语言 时间:
2014-12-02 22:20:51
阅读次数:
205
原文:Swift语言指南(十)--字符串与字符字符串是一段字符的有序集合,如"hellow,world"或"信天翁"。Swift 中的字符串由 String 类型表示,对应着 Character 类型值的集合。
Swift 中的 String 类型为你的编程提供了一个高速的,兼容 Unicode规范...
分类:
编程语言 时间:
2014-12-02 22:19:08
阅读次数:
282
An Informal Introduction to Python: Python中的数,字符串,序列
分类:
编程语言 时间:
2014-12-02 22:18:56
阅读次数:
144
一. 理论和方法介绍 a) 采用颜色检索方法的目的: 对多媒体数据的检索,早期的方法是用文本将多媒体数据进行标识,这显然不是基于多媒体信息本身内容的检索,对多媒体数据中包含的信息是一中及大的浪费; 基于内容的检索是多媒体数据库的关键技术,如何实现这块技术,是值得商榷的,而最好的方法是使用无需领...
分类:
编程语言 时间:
2014-12-02 22:17:07
阅读次数:
364
Kinect SDK v2预览版的主要功能的使用介绍,基本上完成了。这次,是关于取得Body(人体姿势)方法的说明。上一节,是使用Kinect SDKv2预览版从Kinectv2预览版取得BodyIndex(人体区域)的方法。这一节,介绍从Kinect取得Body(人体姿势)的方法。Body到目前为...
分类:
编程语言 时间:
2014-12-02 22:16:35
阅读次数:
938
对Java双亲委派机制和类加载原理的简单思考,最后附一道可能会出现的面试题,与君共商讨。
分类:
编程语言 时间:
2014-12-02 22:16:04
阅读次数:
232
一、字符串格式化,在%左侧放置一个字符串,右侧放置希望格式化的值。>>> format = 'Hello,%s,%s enough for ya?'>>> values = ('world','Hot')>>> print format % valuesHello,world,Hot enough ...
分类:
编程语言 时间:
2014-12-02 22:14:17
阅读次数:
159
这是一份完整的Java 并发整理笔记,记录了我最近几年学习Java并发的一些心得和体会。J.U.C 整体认识原子操作 part 1 从AtomicInteger开始原子操作 part 2 数组、引用的原子操作原子操作 part 3 指令重排序与happens-before法则原子操作 part 4 ...
分类:
编程语言 时间:
2014-12-02 22:12:28
阅读次数:
254