有时候经常遇见自定义注解,怎么看这些注解都做了什么呢?
比如说某一个权限注解,可以看见里面有一对属性方法,但是我怎么找到这个注解的具体实现呢?
不知道怎么看源码是吧~
关于注解,基础的实现方法是新建两个module
以butterknife为例:
注解这东西不包含任何逻辑,他只是起一个标记注释的作用,实际的逻辑是通过扫描实例是否有对应注解,然后根据扫描结果去写相应的逻辑完成的完成的,所以如果你要看注解的处理逻辑在那里,可以去找哪个逻辑类去尝试获取实例上面的目标注解,相关的逻辑也就在那里了。
百度一下@xxx 注解的原理,别人会给你详细介绍源码中怎样让它生效的