在hadoop技术内幕中第一次看到动态代理,准备学习,java基础才是王道
package proxy; //静态代理学习,首先每个类都有一个代理类,他们实现同样的接口,代理类中利用一个实际的类实现自己的方法 /*代理模式涉及到三个角色: 抽象角色:声明真实角色的接口; 真实角色:抽象角色的实现; 代理角色:代理角色内可以含有真实角色的引用,同时可以实现一些附加操作。 */ //以下就是抽象角色 interface inter1 { public void print(); } //以下就是真实角色 class People implements inter1 { private String s; public People(String s1) { s=s1; } @Override public void print() { System.out.println(s); } } //代理角色 class PeopleProxy implements inter1 { People p1=null; public PeopleProxy(People p) { p1=p; } @Override public void print() { p1.print(); } } public class Main { public static void main(String[] args) { // TODO Auto-generated method stub People p=new People("han"); PeopleProxy proxy=new PeopleProxy(p); proxy.print(); } }