https://mp.weixin.qq.com/s/3zrAzOUGpovRRbuYnce3uw

APT(Annotation Processing Tool) 即注解处理器,是一种注解处理工具,用来在编译期扫描和处理注解,通过注解来生成 Java 文件。即以注解作为桥梁,通过预先规定好的代码生成规则来自动生成 Java 文件。

此类注解框架的代表有 ButterKnife、Dagger2、EventBus 等。

Java API 已经提供了扫描源码并解析注解的框架,开发者可以通过继承 AbstractProcessor 类来实现自己的注解解析逻辑。APT 的原理就是在注解了某些代码元素(如字段、函数、类等)后,在编译时编译器会检查 AbstractProcessor 的子类,并且自动调用其 process() 方法,然后将添加了指定注解的所有代码元素作为参数传递给该方法,开发者再根据注解元素在编译期输出对应的 Java 代码。

最新文章

  1. Windows多网卡上网设置
  2. go的mgo,连接未释放问题,连接泄露。
  3. Delphi中Format与FormatDateTime函数详解
  4. 进程状态转换、CPU调度算法
  5. 正则指引-字符组demo
  6. 如果你遇到,在IntelliJ IDEA里Ctrl+Alt+方向键用不了
  7. css省略号布局实例截图
  8. Jquery在线引用地址:
  9. 第一百九十六天 how can I 坚持
  10. Git 的简单使用
  11. 智能指针shared_ptr
  12. [Tyvj模拟赛]运
  13. 警告:Establishing SSL connection without server's identity verification is not recommended
  14. Centos6.8实现SVN提交后自动更新目录
  15. java poi excel操作 把第一列放到最后去
  16. C++调用matlab函数
  17. python和selenium
  18. 对象存储在什么地方(java编程思想)
  19. SJ定理——省选前的学习2
  20. win 7 64 安装 tensorflow

热门文章

  1. 洛谷1101:单词方阵(DFS)
  2. POI导出Execl文件,使JAVA虚拟机OOM
  3. 开发一个简单的postgresql extension
  4. 一、Ansible安装
  5. bootstrapValidator关于js,jquery动态赋值不触发验证(不能捕获“程序赋值事件”)解决办法
  6. 验证代理ip是否可用
  7. write(6)、write(10)和write(16)以及read(6)、read(10)和read(16)的区别与应用
  8. Flask 框架
  9. vue组件之间数据的传递
  10. 实验-12-JSP简单入门