是否有人知道使用本文中描述的技术(注释和类工作)为标准 java 类自动生成标准 Object 方法 toString()、equals() 和 hashcode() 的库?
问问题
2126 次
2 回答
4
是的,Lombok 项目就是这样做的。请参阅http://projectlombok.org。它不仅支持javac,还支持Eclipse。所以方法不在源代码中,而是显示在大纲视图中。
于 2009-07-23T10:31:44.273 回答
0
我当然没有看到这一点,我不确定从中获得什么价值。我发现自动toString
生成通常不是您在搜索日志文件时想要的,并且大多数 IDE 将具有允许您生成hashCode
和equals
实现的工具,尽管这些不会自动反映您的类中的任何模式修改。
有两个选项可以实现这一点:
- 编译时类注释,它被处理(例如由您的 IDE)以生成相关方法。注释可以修改声明它们的类的生成字节码吗?我认为这种方法是一个非常糟糕的主意,因为您无法通过查看源代码来判断发生了什么
- 相关方法上的运行时注释以指示它们应通过特殊机制进行评估。这仍然需要您声明和注释您的方法,我也不确定您将如何实际拦截方法调用以在任何情况下使用注释
于 2009-07-23T10:27:31.100 回答