转载请标明出处:
http://blog.csdn.net/tyzlmjj/article/details/51251727
本文出自:【M家杰的博客】
概述
Java反射机制提供了动态代理的封装。动态代理可以对原本实现的方法进行附加操作,比如修改这个方法的返回值、修改传入的参数、在方法执行前后做别的操作或者干脆完全替换这个方法都是可以实现的,唯一的缺憾是只支持接口形式,所以如果需要用动态代理就需要写接口去约束。
动态代理简单实现
实现动态代理的关键类/接口
关键类
java.lang.reflect.Proxy
关键接口
java.lang.reflect.InvocationHandler
这里写一个简单的例子,主要分成4个Java文件
SayHello.java
接口文件Hello.java
实现SayHello接口的实体类HelloHandler.java
实现InvocationHandler接口的实体类,并封装了代理的绑定等等的操作。Main.java
就是一个用于测试的主类
先来看接口,随便写个方法
SayHello.java