是否有任何Java库使用注释来生成代码?

是否有人知道一个库使用本文中描述的技术(注释和类工作)来自动为标准java类生成标准的Object方法toString(),equals()和hashcode()?

是的,项目龙目岛这样做。 见http://projectlombok.org 。 它不仅支持javac,还支持Eclipse。 因此这些方法不在源代码中,而是显示在大纲视图中。

我当然没有看到这一点,我不确定从中获得什么价值。 我发现自动toString生成通常不是在搜索日志文件时所需的,并且大多数IDE将具有允许您生成hashCodeequals实现的工具,尽管授予它们不会自动反映您的类中的任何架构修改。

实现此目的有两种选择:

  1. 编译时类注释,由(例如,由IDE)处理以生成相关方法。 注释可以修改它们声明的类的生成字节码吗? 我认为这个appraoch是一个非常糟糕的主意,因为你无法通过查看源代码来判断发生了什么
  2. 关于相关方法的运行时注释,表明它们应该通过特殊机制进行评估。 这仍然需要您声明和注释您的方法,我也不确定如何实际拦截方法调用以在任何事件中使用注释