Java设计模式_结构型_外观模式_病人去医院看病

转载请注明出处:http://blog.csdn.net/ljmingcom304/article/details/50461603
本文出自:【梁敬明的博客】

1.医院接待员

  外观模式就是将客户程序与子系统相分离,提高子系统的独立性与可移植性。当病人去医院看病时,如果分别去不同的科室办理不同业务将会变得十分麻烦,若医院提供一个接待员,病人看病只需要通知接待员,然后通过接待员办理挂号、就诊、取药等业务,将会变的十分的方便。

//接待员
public class Facade {

    private FinanceDepart finance = new FinanceDepart();
    private SurgicalDepart surgical = new SurgicalDepart();
    private Pharmacy pharmacy = new Pharmacy();

    public void register(){
        finance.register();
    }

    public void visit() {
        surgical.visit();
    }

    public void getMedicine() {
        pharmacy.getMedicine();
    }

}

2.医院不同科室

  一个病人得了感冒,那么首先应当去财务科进行挂号,然后去外科进行就诊,最后去药房抓药。

//财务科
public class FinanceDepart {

    public void register(){
        System.out.println("挂号");
    }

}

//外科
public class SurgicalDepart {

    public void visit() {
        System.out.println("就诊");
    }

}

//药房
public class Pharmacy {

    public void getMedicine() {
        System.out.println("取药");
    }

}

3.病人去医院看病

  假设一个病人得了感冒去医院看病,首先应当找到医院的接待员,然后由接待员帮忙办理相关业务,完成看病的相关流程。 

public class Invalid {

public static void main(String[] args) {
    Facade facade = new Facade();
    facade.register();
    facade.visit();
    facade.getMedicine();
}

}

你可能感兴趣的:(设计模式)