zoukankan      html  css  js  c++  java
  • 简单Java动态代理实现

    package test;
    
    import java.lang.reflect.InvocationHandler;
    import java.lang.reflect.Method;
    import java.lang.reflect.Proxy;
    
    public class Test {
        
        public static void main(String[] args) {
            
             
            //Proxy.newProxyInstance 
             // 参数:1.  类加载器 
            //   2.要代理的接口 new Class[] {IHello.class} 
            //   3.实际处理接口方法的对象
            //   IHello.class 
            ///
            IHello iHello= (IHello)Proxy.newProxyInstance(Test.class.getClassLoader(), new Class[] {IHello.class} , new InvocationHandler() {
                
                @Override
                public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
                    System.out.println("zhangxiongfeng");
                    System.out.println("----"+method.getName());
                    //proxy 生成的代理对象 
                    // 执行的方法
                    //args 实际传入的参数
                    return proxy;
                }
            });        
            iHello.get();
        }
    
    }
    package test;
    
    public interface IHello {
    
        public void get();
        
    }
  • 相关阅读:
    codevs1288 埃及分数
    codevs1792 分解质因数
    dp
    JAVA大数贪心
    求最长不重叠子串
    初识后缀数组
    dp
    两数相除,判断小数位是否有限位
    构造二分图匹配
    建立多个树状数组
  • 原文地址:https://www.cnblogs.com/zxf330301/p/10630353.html
Copyright © 2011-2022 走看看