外觀模式
隱藏系統(tǒng)的復(fù)雜性,并向客戶端提供了一個(gè)客戶端可以訪問系統(tǒng)的接口。
通過一個(gè)控制類酿联,來控制多個(gè)類的方法。這樣用戶只要會(huì)操作控制類夺巩,而不用學(xué)習(xí)其他多個(gè)類了贞让。
去醫(yī)院看病,可能要去掛號(hào)柳譬、門診喳张、劃價(jià)、取藥美澳,讓患者或患者家屬覺得很復(fù)雜销部,如果有提供接待人員,只讓接待人員來處理制跟,就很方便舅桩。
/**
* Created by malei on 2016/12/6.
* Doctor是控制類,通過這個(gè)類可以控制Disease的實(shí)現(xiàn)類
*/
public class Doctor {
private final ColdDis mColdDis;
private final HotDis mHotDis;
public Doctor(){
mColdDis = new ColdDis();
mHotDis = new HotDis();
}
public void sayByCold(){
mColdDis.say();
}
public void sayByHot(){
mHotDis.say();
}
public static void main(String[] args){
Doctor dor = new Doctor();
dor.sayByCold();
}
}
/**
* Created by malei on 2016/12/6.
*/
public class ColdDis implements Disease{
@Override
public void say() {
Log.show("感冒了");
}
}
/**
* Created by malei on 2016/12/6.
*/
public class HotDis implements Disease{
@Override
public void say() {
Log.show("發(fā)燒了");
}
}
/**
* Created by malei on 2016/12/6.
*/
public interface Disease {
void say();
}