编译期注解和运行时注解

128 阅读1分钟

运行期注解利用反射去获取信息还是比较耗性能的,对应@Retention(RetentionPolicy.RUNTIME)。

编译器注解,以及处理编译器注解的手段 APT 和 Javapoet ,对应 @Retention(RetentionPolicy.CLASS)。

其中Apt+Javapoet目前也是应用比较广泛,在一些大的开源库,如EventBus3.0+,页面路由ARouter、Dagger2、Retrofit等均有使用的身影,注解不仅仅是通过反射一种方式来使用,也可以使用APT在编译器处理。