首先:定义一个抽象类或借口
例:
package JingTai;
public interface JingTai1 {
public void show();
}
接着:定义一个被代理的类,他需要继承上面的类或实现上面的方法
例:
package JingTai;
public class zhen implements JingTai1{
@Override
public void show() {
// TODO Auto-generated method stub
System.out.println("我是真实类");
}
}
再:定义一个代理类,同样需要继承上面的类或实现上面的方法
例:
package JingTai;
public class dai implements JingTai1{
private zhen a;
public dai(zhen a) {//通过构造器传入一个被代理类
super();
this.a = a;
}
@Override
public void show() {//在重写的方法中,完成自己和被代理类的功能
// TODO Auto-generated method stub
System.out.println("在真实类执行前-->我是代理类");
a.show();
System.out.println("在真实类执行后-->我是代理类");
}
}
结局:测试
例:
package JingTai;
public class test {
public static void main(String[] args) {
zhen a=new zhen();//定义一个被代理类
dai b=new dai(a);//定义一个代理类,传入被代理类
b.show();
}
}