在代理模式(Proxy Pattern)中,一个类代表另一个类的功能。这种类型的设计模式属于结构型模式。
在代理模式中,我们创建具有现有对象的对象,以便向外界提供功能接口。
class ProxyPattern {
public static void main(String[] args) {
new RealSubjectProxy().doWork();
}
}
interface Subject {
void doWork();
}
class RealSubject implements Subject {
@Override
public void doWork() {
System.out.println("Hello World");
}
}
class RealSubjectProxy implements Subject {
private RealSubject subject;
public RealSubjectProxy() {
try {
this.subject = (RealSubject) this.getClass().getClassLoader().loadClass("RealSubject").newInstance();
// this.subject = new RealSubject();
} catch (Exception e) {
e.printStackTrace();
}
}
public void connect() {
System.out.println("建立连接");
}
public void log() {
System.out.println("日志记录");
}
@Override
public void doWork() {
connect();
subject.doWork();
log();
}
}
复制代码
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END