博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
代理模式小记【原创】
阅读量:6955 次
发布时间:2019-06-27

本文共 679 字,大约阅读时间需要 2 分钟。

     什么是代理模式呢?我很忙,忙的没空理你,那你要找我呢就先找我的代理人吧,那代理人总要知道被代理人能做哪些事情不能做哪些事情吧,那就是两个人具备同一个接口,代理人虽然不能干活,但是被代理的人能干活呀。 

     比如西门庆找潘金莲,那潘金莲不好意思答复呀,咋办,找那个王婆做代理。 

     先定义一个这类女人的接口KindWoman,接口里写几个抽象方法“抛媚眼”、“ooxx”。然后定义具体的这类女人——潘金莲,实现接口和里面的两个方法。接下来才是代理模式的精华。定义一个代理——王婆,其实她和“潘金莲”类都是KindWoman的实现类(或子类),不同的是,她里面还定义了一个KindWoman的属性,并包含一个构造方法,构造方法的目的就是当其被客户端——西门庆-_-||调用时,传入真正的操作对象潘金莲给KindWoman(类的多态)。“王婆”(代理者)还有一点和“潘金莲”(被代理者)不同,王婆只是一个传话的,虽然和“潘金莲”一样都是KindWoman的实现类,但是“抛媚眼”、“ooxx”。。。。这些方法肯定不能和“潘金莲”一样去实现吧!刚才不是在“王婆”里定义了KindWoman吗?对了,此时的KindWoman实际上就是客户端传入的“潘金莲”,“王婆”的“抛媚眼”、“ooxx”。。。。等方法里,实际上就是调用“潘金莲”对象的“抛媚眼”、“ooxx”。。。。方法。

   好了,最后在客户端——男猪脚——“西门庆”类里面就简单了,只需要new一个“王婆”,构造方法里传入“潘金莲”,犯罪就可以进行了........-_-||

   一句话概括代理模式的特点——子类的相互依赖!

转载地址:http://bvvil.baihongyu.com/

你可能感兴趣的文章
[20190423]那个更快的疑问3.txt
查看>>
[20170705]理解linux su命令.txt
查看>>
iOS - ImageCache 网络图片缓存
查看>>
如何调整eclipse中代码字体大小
查看>>
ubuntu16.04下python2、python3环境选择与python升级(pip版本切换)
查看>>
FQDN说明
查看>>
java基础---常用类!
查看>>
discuz论坛后台部分设置更改之后,清除了缓存网站前台不更新不生效的解决办法...
查看>>
ACM-ICPC 2018 沈阳赛区网络预赛 F Fantastic Graph(贪心或有源汇上下界网络流)
查看>>
关于js修改三种css样式的方法
查看>>
sofa
查看>>
控件绑定值“正则占位符取值”
查看>>
C#_集合与泛型集合
查看>>
Hibernate ORM框架——续第一章:Hibernate的增删改查(第一个hibernate代码的优化)...
查看>>
可扩展性设计之Cache与Search的利用
查看>>
poj2528
查看>>
FortiGate软件版本升级
查看>>
f5健康检查
查看>>
spring boot 配置文件语法
查看>>
scrapy-splash抓取动态数据例子三
查看>>