区别
@within:定义在哪里,就作用在哪里。(有点静态编译的味道)@target:运行在哪里,就作用在哪里。(类比动态执行的感觉)@within,如果子类没有重写,在某个类上加一个注解,就会默认拦截父类的方法。其实用@target更符合我们想要的结果,在某个类上面加一个注解,拦截的时候就会获取这个类上面的注解,跟父类完全没有关系了。但这个时候会遇到一个问题,就是不相关的类都会生成代理类。
时间:2021-12-03 19:48:10
@within:定义在哪里,就作用在哪里。(有点静态编译的味道)@target:运行在哪里,就作用在哪里。(类比动态执行的感觉)@within,如果子类没有重写,在某个类上加一个注解,就会默认拦截父类的方法。其实用@target更符合我们想要的结果,在某个类上面加一个注解,拦截的时候就会获取这个类上面的注解,跟父类完全没有关系了。但这个时候会遇到一个问题,就是不相关的类都会生成代理类。