/*模拟静态代理
* */
/*定义接口*/
interface stu{
void student();
void student(String t);
}
/**被代理类--必须实现接口
* */ public class reflexCount implements stu {
public void student() {
// TODO Auto-generated method stub
System.out.println("我在学习");
}
public void student(String t) {
// TODO Auto-generated method stub
System.out.println("我在学习"+t);
}
//测试
public static void main(String[] args) {
handl p=new handl();//代理对象
reflexCount obj= new reflexCount();//被代理对象
p.setT(obj);
//p.student("动态代理");//带参数
p.student();
}
}
/*代理类---必须实现接口**/
class handl implements stu{
stu t;//定义一个接口类型的对象。
//给定Set方法--把被代理对象穿过来
public void setT(stu t) {
this.t = t;
}
public void student() {
// TODO Auto-generated method stub
System.out.println("我在学习之前吃饭!");
this.t.student();
System.out.println("我在学习之后洗澡!");
}
public void student(String t) {
// TODO Auto-generated method stub
System.out.println("我在学习之前吃饭!");
this.t.student(t);
System.out.println("我在学习之后洗澡!");
}
}