常见设计模式-代理模式(1)

代理模式的定义:是指为其他对象提供一种代理,以控制对整个对象的访问

代理对象在客户端和目标之间起到中介作用。

属于结构型设计模式

目的:保护目标对象,增强目标对象

代理也被分为静态代理和动态代理

本篇文章讲解静态代理

静态代理定义:显示声明被代理对象

例如  父亲要给儿子找对象,父亲作为代理人,代理儿子提出  对另一半对象的要求。

如何用代码表示呢?

首先我们新建Son(儿子)类

接着儿子提出要求,儿子类实现Person(人)类 实现要求的数据

常见设计模式-代理模式(1)

常见设计模式-代理模式(1)

接着我们新建Father(父亲)类

Father类传入当前Son实例,代理该儿子的要求,去寻找对象。

常见设计模式-代理模式(1)

那么在这个时候,我们就成为静态代理了,显示声明被代理对象Son。

在这段代码中,父亲成为儿子的代理,可以为 对儿子寻找对象的要求进行一个增强作用。

测试如下:

常见设计模式-代理模式(1)

在我们平常写代码中,还有MVC模式,其实也是属于一个静态代理,service类 显示声明 Dao类 去CURD数据。