静态代理的实现
代理(Proxy)是一种设计模式,提供了对目标对象另外的访问方式;即通过代理对象访问目标对象,这样做的好处是可以在目标对象实现的基础上,增强额外的功能操作扩展目标对象的功能。
在日常生活中我们为什么需要代理?以学习为例,学习的流程是拿出书包来,把书掏出来,准备好纸笔,然后开始学习,等学完了还得收拾书,把书塞回书包里,还得整理一下书包,这是一个完整的学习的过程。但是我很懒,不想动弹,只想学习,那可能就得让妈妈帮我把书包拿过来,把书打开,我只管学习就好了,学完以后,妈妈再帮我把书整理好放回去.在这里,妈妈就代表了一个代理对象,要学习的人是我,而我只管学习,这样效率才最高,至于其他的交给代理对象(妈妈)做就好了
从实现上来看,静态代理类不具备真实主题类处理真正请求的能力,因此需要将请求交给真实主题对象处理;为了获取真是主题类的能力,代理类可以继承真实主题类,或者组合真实