中介者(調停者)模式
http://www.cnblogs.com/java-my-life/archive/2012/06/20/2554024.html
-
interface Mediator {
-
/**
-
* 同事物件在自身改變的時候來通知調停者方法 讓調停者去負責相應的與其他同事物件的互動
-
*/
-
public void changed(Colleague c);
-
}
-
-
class ConcreteMediator implements Mediator {
-
// 持有並維護同事A
-
private ConcreteColleagueA colleagueA;
-
// 持有並維護同事B
-
private ConcreteColleagueB colleagueB;
-
-
public void setColleagueA(ConcreteColleagueA colleagueA) {
-
this.colleagueA = colleagueA;
-
}
-
-
public void setColleagueB(ConcreteColleagueB colleagueB) {
-
this.colleagueB = colleagueB;
-
}
-
-
@Override
-
public void changed(Colleague c) {
-
/**
-
* 某一個同事類發生了變化,通常需要與其他同事互動 具體協調相應的同事物件來實現協作行為
-
*/
-
}
-
-
}
-
-
abstract class Colleague {
-
// 持有一個調停者物件
-
private Mediator mediator;
-
-
/**
-
* 建構函式
-
*/
-
public Colleague(Mediator mediator) {
-
this.mediator = mediator;
-
}
-
-
/**
-
* 獲取當前同事類對應的調停者物件
-
*/
-
public Mediator getMediator() {
-
return mediator;
-
}
-
-
}
-
-
class ConcreteColleagueA extends Colleague {
-
-
public ConcreteColleagueA(Mediator mediator) {
-
super(mediator);
-
}
-
-
/**
-
* 示意方法,執行某些操作
-
*/
-
public void operation() {
-
// 在需要跟其他同事通訊的時候,通知調停者物件
-
getMediator().changed(this);
-
}
-
}
-
-
class ConcreteColleagueB extends Colleague {
-
-
public ConcreteColleagueB(Mediator mediator) {
-
super(mediator);
-
}
-
-
/**
-
* 示意方法,執行某些操作
-
*/
-
public void operation() {
-
// 在需要跟其他同事通訊的時候,通知調停者物件
-
getMediator().changed(this);
-
}
- }
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29254281/viewspace-2136362/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 中介者模式模式
- (三)中介者模式模式
- JavaMediatorPattern(中介者模式)Java模式
- 中介者模式(Mediator Pattern)。模式
- 行為型模式:中介者模式模式
- 設計模式之中介者模式設計模式
- 設計模式(十四)中介者模式設計模式
- 設計模式(十一):中介者模式設計模式
- 設計模式之中介者設計模式
- 設計模式(十七)中介者設計模式
- ios開發-中介者模式iOS模式
- 設計模式實戰 - 中介者模式設計模式
- 極簡設計模式-中介者模式設計模式
- 設計模式系列之「中介者模式」設計模式
- Python設計模式-中介者模式Python設計模式
- 中介者模式(c++實現)模式C++
- AngularJS中介者模式例項AngularJS模式
- 設計模式-行為型模式-中介者模式設計模式
- C#設計模式(16)——中介者模式C#設計模式
- 設計模式學習(十八)中介者模式設計模式
- 我的Java設計模式-中介者模式Java設計模式
- 設計模式系列3--中介者模式設計模式
- C#設計模式之中介者模式C#設計模式
- 23種設計模式之中介者模式設計模式
- Java學設計模式之中介者模式Java設計模式
- 協調多個物件之間的互動——中介者模式(三)物件模式
- 中介者設計模式——業務實踐設計模式
- 折騰Java設計模式之中介者模式Java設計模式
- 設計模式之中介者模式(行為型)設計模式
- 設計模式(十九)——中介者模式(智慧家庭案例)設計模式
- 設計模式 | 中介者模式及典型應用設計模式
- 18.java設計模式之中介者模式Java設計模式
- Android原始碼設計模式-中介者模式Android原始碼設計模式
- 15、Python與設計模式–中介者模式Python設計模式
- 設計模式--中介者模式Mediator(行為型)設計模式
- JAVA設計模式之 中介者模式【Mediator Pattern】Java設計模式
- Java進階篇設計模式之十 ---- 訪問者模式和中介者模式Java設計模式
- Rust語言之GoF設計模式:中介者Mediator模式RustGo設計模式