访问者模式学习心得

近日学习了访问者模式,有些心得特此记下。按照我的理解访问者模式的本质就是观察者模式,也是起到一个桥梁的作用,来连接两个只有有关系的类,加入访问者以切断他们之间的直接联系。假设现在市面是只有一种Modem,也只有一种OS,这个Modem只能在这个OS的指挥下工作,但是这个OS可以指挥其他很多种外设。当Modem需要和OS交互时,加入一个观察者,将Modem的需求和OS的响应联系在一起。后来Modem阵营发生冲突了,分类为A、B、C3种,OS阵营也产生了新的品种,分为OS1和OS2两种。那么显然一个观察者模式不够用了,因为每种Modem都可以与两种OS交互,也就是说有了6种联系:ModemA<--> OS1, ModemA<-->OS2,ModemB<--> OS1, ModemB<-->OS2,ModemC<--> OS1, ModemC<-->OS2。这样就对观察者模式进行升级,将这6种联系合并成两种:ModemA/B/C<-->OS1和ModemA/B/C<-->OS2,也就是说这里有了一个数组,将这个复杂了的观察者模式称为访问者模式。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值