Java反射提供了一种类动态代理机制,可以通过代理接口实现类来完成程序无侵入式扩展。
    Java动态代理主要使用场景:

    1. 统计方法执行所耗时间。
    2. 在方法执行前后添加日志。
    3. 检测方法的参数或返回值。
    4. 方法访问权限控制。
    5. 方法Mock测试。