动态代理 要求测算一个类里面的某个方法的执行时间 直接在一个测试的方法中调用这个类的方法就可以了也可以直接的写在这个类的main方法里面 继承这个类对需要测算时间的方法进行重写方法中这样来写@Override public void superMethod(){ Systemoutprintln(method start……)//也可以获取系统的当前时间记录下来为start supersuperMethod()//调用父类的方法//获取系统的当前时间记录下来为end //endstart就是当前的方法运行的时间 Systemoutprintln(method end……) } 实现此类所实现的接口public interface A { public void display()} public class B implements A { @Override public void display(){ for(int i=i<i++){ } } public class C implements A { public A b = new B()public void main(){ test()} public void test() { Systemoutprintln(Method start……)bdisplay()Systemoutprintln(Method end……)} 其中第三种方法是最简单的了而且是灵活性最强的这个同时被称为是类的装配 动态代理的用途权限检查日志效率事物管理 异常的管理 一般使用动态代理的是它的面向接口编程 |