外观模式

外观模式,就有有一个外观类(Facade),其方法里是对多个子系统(或者其他类的对象)的操作的汇总包装,结果是外部不知道Facade具体做了哪些操作,形成比较好的隔离。

外观模式契合的是迪米特法则原子,即最少知道原则。

主要角色就是一个外观类。

示例代码:

package designMode.facade2;

public class Fund {
Stock1 stock1;
Stock2 stock2;
Stock3 stock3;

public Fund() {
stock1 = new Stock1();
stock2 = new Stock2();
stock3 = new Stock3();
}

//购买基金
public void buyFund() {
stock1.buy();
stock2.buy();
stock3.buy();
}

//赎回基金
public void sellFund() {
stock1.sell();
stock2.sell();
stock3.sell();
}
}

public class Stock1 {
//买股票
public void buy() {
System.out.println("股票1买入");
}

//卖股票
public void sell() {
System.out.println("股票1卖出");
}
}

package designMode.facade2;

public class Client {
public static void main(String[] args) {
Fund fund = new Fund();

//基金购买
fund.buyFund();
System.out.println("-------------");
//基金赎回
fund.sellFund();
}
}

posted @   求简君  阅读(2)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
· 零经验选手,Compose 一天开发一款小游戏!
点击右上角即可分享
微信分享提示