外观模式

packagecom.jerry.design.facade.imp;


publicinterfaceFacadeImp {

publicvoidtest();

publicvoidtestA();

publicvoidtestB();

publicvoidtestC();


}


实现类A:

packagecom.jerry.design.facade.impl;


importcom.jerry.design.facade.imp.FacadeImp;



publicclassTestAimplementsFacadeImp {

publicvoidtest(){

System.out.println(" i am TestA's test()!");

}


@Override

publicvoidtestA() {

System.out.println(" i am TestA's testA()!");

}


@Override

publicvoidtestB() {

}


@Override

publicvoidtestC() {

}


}


实现类B:

packagecom.jerry.design.facade.impl;


importcom.jerry.design.facade.imp.FacadeImp;



publicclassTestBimplementsFacadeImp {

publicvoidtest(){

System.out.println(" i am TestB's test()!");

}


@Override

publicvoidtestA() {

}


@Override

publicvoidtestB() {

System.out.println(" i am TestB's testB()!");

}


@Override

publicvoidtestC() {

}


}


实现类C:

packagecom.jerry.design.facade.impl;


importcom.jerry.design.facade.imp.FacadeImp;



publicclassTestCimplementsFacadeImp {

publicvoidtest(){

System.out.println(" i am TestC's test()!");

}


@Override

publicvoidtestA() {

}


@Override

publicvoidtestB() {

}


@Override

publicvoidtestC() {

System.out.println(" i am TestC's testC()!");

}


}


外观类:

packagecom.jerry.design.facade.impl;


publicclassFacade {

publicvoidtestFacadeImplA(){

newTestA().test();

newTestB().test();

newTestC().test();

}

publicvoidtestFacadeImplB(){

newTestA().testA();

newTestB().testB();

newTestC().testC();

}


}


调用代码:

packagecom.jerry.design.facade.client;


importcom.jerry.design.facade.impl.Facade;


publicclassTest {


/**

*@paramargs

*/

publicstaticvoidmain(String[] args) {


newFacade().testFacadeImplA();

// i am TestA's test()!

// i am TestB's test()!

// i am TestC's test()!

newFacade().testFacadeImplB();

// i am TestA's testA()!

// i am TestB's testB()!

// i am TestC's testC()!

}


}


总结:使子系统易用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值