已解决
11 结构型模式- 代理模式
来自网友在路上 166866提问 提问时间:2023-10-24 14:00:16阅读次数: 66
最佳答案 问答题库668位专家为你答疑解惑
结构性模式一共包括七种:
代理模式、桥接模式、装饰者模式、适配器模式、门面(外观)模式、组合模式、和享元模式。
1 代理模式介绍
软件开发中的代理:
代理模式中引入了一个新的代理对象,代理对象在客户端对象和目标对象之间起到了中介的作用,它去掉客户不能看到的内容和服务或者增加客户需要的额外的新服务.
2 代理模式原理
3 静态代理实现
举例:保存用户功能的静态代理实现
public interface IUserDao {void save();
}
/*** 目标类**/
public class UserDaoImpl implements IUserDao {@Overridepublic void save() {System.out.println("保存数据");}
}
/*** 代理类**/
public class UserDaoProxy implements IUserDao {private IUserDao target;public UserDaoProxy(IUserDao target) {this.target = target;}@Overridepublic void save() {System.out.println("开启事务"); //扩展额外的功能target.save();System.out.println("提交事务");}
}
/*** 静态代理* 优点: 可以在不修改目标类的前提下,扩展目标类的功能* 缺点:* 1.冗余.由于代理对象要实现和目标对象一致的接口,会产生很多的代理.* 2.不易维护.一旦接口中增加方法,目标对象和代理对象都要进行修改.*/@Testpublic void testStaticProxy(){//目标类IUserDao dao = new UserDaoImpl();//代理对象UserDaoProxy proxy = new UserDaoProxy(dao);proxy.save();}
查看全文
99%的人还看了
相似问题
猜你感兴趣
版权申明
本文"11 结构型模式- 代理模式":http://eshow365.cn/6-23393-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!