1700460120
1700460121
//业务逻辑处理
1700460122
1700460123
}
1700460124
1700460125
}
1700460126
1700460127
RealSubject是一个正常的业务实现类,代理模式的核心就在代理类上,如代码清单12-8所示。
1700460128
1700460129
代码清单12-8 代理类
1700460130
1700460131
public class Proxy implements Subject{
1700460132
1700460133
//要代理哪个实现类
1700460134
1700460135
private Subject subject=null;
1700460136
1700460137
//默认被代理者
1700460138
1700460139
public Proxy(){
1700460140
1700460141
this.subject=new Proxy();
1700460142
1700460143
}
1700460144
1700460145
//通过构造函数传递代理者
1700460146
1700460147
public Proxy(Object……objects){
1700460148
1700460149
}
1700460150
1700460151
//实现接口中定义的方法
1700460152
1700460153
public void request(){
1700460154
1700460155
this.before();
1700460156
1700460157
this.subject.request();
1700460158
1700460159
this.after();
1700460160
1700460161
}
1700460162
1700460163
//预处理
1700460164
1700460165
private void before(){
1700460166
1700460167
//do something
1700460168
1700460169
}
[
上一页 ]
[ :1.70046012e+09 ]
[
下一页 ]