静态代理(JAVA设计模式)
来源:互联网 发布:加壳软件 编辑:程序博客网 时间:2024/05/19 21:44
代理:一个角色代表另一个角色来完成某些特定的功能,当我们需要在一个方法的前后添加逻辑的时候(日志,事务等)可以使用代理。
静态代理可以使用两种方式实现:一种是继承,一种是聚合。
1.定义接口Moveable
2.实现类Tank
3.在Tank的move方法前后添加时间日志(继承方式)或系统日志(聚合方式)
public interface Moveable {void move();}
//需要代理的对象public class Tank implements Moveable{public void move() {System.out.println("tank move");}}
//第一种:以继承的方式实现静态代理,在方法前后添加逻辑public class TimeProxy extends Tank{@Overridepublic void move() {System.out.println("timeProxy start...");super.move();System.out.println("timeProxy end...");}public static void main(String[] args) {Moveable m = new TimeProxy();m.move();//调用了代理后的方法。}}
//第二种:以聚合的方式实现代理类,为方法前后添加日志public class LogProxy implements Moveable{Moveable m;public LogProxy(Moveable m) {this.m = m;}public void move() {System.out.println("move log start...");m.move();System.out.println("move log end...");}public static void main(String[] args) {Moveable mm = new Tank();mm = new LogProxy(mm);//这个代理类只能给Moveable接口的类进行代理,我们需要创建任意接口的代理类(动态代理)mm.move();}}
- JAVA设计模式--代理模式(静态)
- java代理设计模式(静态代理与动态代理)
- 静态代理(JAVA设计模式)
- 设计模式-java实现代理模式(静态代理)
- java设计模式之代理模式(静态代理)
- JAVA设计模式之【代理模式】一(静态代理)
- Java设计模式---静态代理
- java设计模式----静态代理
- Java设计模式(七):代理模式Proxy(静态代理模式+动态代理模式)
- 设计模式(代理模式--静态代理)
- java设计模式-代理模式(静态代理,动态代理)
- java设计模式之代理模式 (静态&动态)
- JAVA设计模式(三)静态与动态代理模式
- Java设计模式-----Proxy模式(静态代理)
- Java设计模式-----Proxy模式(静态代理)
- java设计模式之静态代理模式
- java 设计模式之静态代理模式
- JAVA设计模式之静态代理模式
- hdu 3068 最长回文(回文算法)
- 博客轨迹-Forrest,myself
- 第三周 项目一 撞错
- Hdu 1010 Tempter of the Bone
- PHP判断远程文件是否存在的几种方法
- 静态代理(JAVA设计模式)
- 判断一个数是否是素数
- Proxy SwitchySharp地址
- Android中ListView分页加载数据
- VMware及Linux
- 模拟post登陆提交表单问题详解
- HDU_4514湫湫系列故事——设计风景线
- 2013腾讯编程马拉松初赛 20130320第一场1001 小Q系列故事——屌丝的逆袭 简单题
- 函数嵌套找最大值