調停者模式:就是讓調停者負責同事之間的訊息傳遞,避免同事之間的訊息傳遞,這樣會大大減少同事之間的耦合。
同事抽象類
public abstract class
colleague
public mediator getmediator()
}
調停者介面(想象成主機板上的插槽的規範)public
inte***ce
mediator
調停者實體(按照介面規範造主機板,主機板內部的通訊機制)public
class
mainboard
implements
mediator
public
void
setcpu
(cpu cpu)
public
void
setvideocard
(videocard videocard)
public
void
setsoundcard
(soundcard soundcard)
public
void
changed
(colleague c)
else
if(c instanceof
cpu)
}public
void
opecddriverreaddata
(cddriver cd)
public
void
opecpu
(cpu cpu)
}
光碟機public
class
cddriver
extends
colleague
public string getdata()
public
void
readcd
(string[
] s) throws interruptedexception
}}
cpupublic
class
cpuextends
colleague
public string getvideodata()
public string getsounddata()
public
void
executedata
(string data)
}
音訊public
class
soundcard
extends
colleague
public
void
sounddata
(string data)
}
public
class
videocard
extends
colleague
public
void
showdata
(string data)
}
使用public
class
client
;// 讀取光碟
cd.readcd
(s);
}}
中介者模式(調停者模式)
中介者模式 調停者模式 abstract class abstractcolleague public function setnumber number,abstractmediator am null class colleaguea extends abstractcolleague this...
其他模式(調停者模式和門面模式)
mediator模式 每個類之間都不要互相打交道了,都通過乙個調停者來互動 facade模式 門面模式,比如,要和系統中的多個類打交道,還必須理解這多個類之前的關係,太麻煩了,可以直接把這些錯綜複雜關係的類用乙個facade門面封裝起來,就是對外的乙個門面,呼叫者只需要和這個門面打交道即可。ejb中...
9 23 結構型設計模式 門面模式和調停者模式
門面模式和調停者模式 門面模式,是指提供乙個統一的介面去訪問多個子系統的多個不同的介面,它為子系統中的一組介面提供乙個統一的高層介面。使得子系統更容易使用。當需要提供給其他人功能時,實際 需要做很多調動,而這樣的工作又有很多類。而這每一類之間又存在細節的不同,如果實質編碼結構如下 對於業務或者演算法...