第 11 节 动态代理
传统代理设计模式的弊端
public class Application {
public static void main(String[] args) throws Exception {
IMessage message = new MessageProxy(new MessageReal());
message.send();
}
}
interface IMessage {
void send();
}
class MessageReal implements IMessage {
@Override
public void send() {
System.out.println("[SEND] Hello World!");
}
}
class MessageProxy implements IMessage {
private IMessage message;
public MessageProxy(IMessage message) {
this.message = message;
}
@Override
public void send() {
if (this.connect()) {
this.message.send();
this.close();
}
}
public boolean connect() {
System.out.println("[INFO] open connection...");
return true;
}
public void close() {
System.out.println("[INFO] close connection.");
}
}动态代理模式
最后更新于