facade(外观模式):提供一个统一的接口,用来访问子系统中的一群接口,定义一个高层接口,保证子系统更加安全、容易使用。例如:tomcat中提供RequestFacade和ResponseFacade外观类,这连个类中再封装私有的servletRequest和servletResponse属性,向下转型只能转型为facade类,保证向下转型的安全性,使得接口更加简单。
外观模式角色:
外观角色(facade):被客户端角色调用,知道具体子系统的功能,封装了具体的子系统。
子系统角色(subsystem classes):实现子系统的具体功能,并处理由facade对象指派的任务。
客户角色(client):调用facade角色完成对应的功能。