15.设计模式-代理模式-静态代理
//1.定义接口
//2.接口实现
//3.定义静态代理类,,也需要实现接口,重写接口方法
//4.测试
public interface IStudentDao {
public String study(String name);
}
public class StudentDao implements IStudentDao{
public String study(String name) {
System.out.println(name + " 正在学习中....");
return "学习结束!";
}
}
//静态代理对象,构造方法注入
public class ProxyFactory implements IStudentDao{
private IStudentDao target;
public ProxyFactory(IStudentDao target) {
this.target = target;
}
public String study(String name) {
System.out.println("开始代理....");
String ret= target.study(name);
System.out.println("结束代理....");
return ret;
}
}
public class Test {
public static void main(String[] args) {
IStudentDao target = new StudentDao();
ProxyFactory factory=new ProxyFactory(target);
String rtn= factory.study("张三");
System.out.println(rtn);
}
}