动态代理

2021-08-13  本文已影响0人  紫鹰

动态代理实现过程

定义接口

interface Animal{
       public void eat(String food)
}

获取代理实例并调用实力上的方法

    InvocationHandler handler = new InvocationHandler() {
        @Override
        public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
            Log.v("test", method.getName());
            Log.v("test", "看,那个动物吃"+args[0]+"了");
            return null;
        }
    };
    
    Animal animal = (Animal)Proxy.newProxyInstance(Animal.class.getClassLoader(),new Class[]{Animal.class},handler);
    animal.eat("豆子");

应用

上一篇下一篇

猜你喜欢

热点阅读