【发布时间】:2013-10-21 22:45:25
【问题描述】:
假设我有一个类 Customer:
public class Customer {
private String firstName;
private String lastName;
private String doNotAddMeToEquals;
//Getters and Setters below
}
我在 Eclipse 中使用 Guava Eclipse Plugin 来生成我的 equals() 和 hashCode() 方法;但是,我也可以使用 eclipse -> Source -> Generate HashCode / Equals。无论哪种方式……都无所谓。
有没有办法对属性 doNotAddMeToEquals 进行注释,这样当我使用 guava 插件生成 equals 和 hashcode 方法时,该属性不会显示在列表中?
无需更改插件或创建模板。
提前致谢!!
【问题讨论】:
-
你指的是什么番石榴插件? Guava 没有提供“插件”来生成 equals 和 hashCode 方法。它提供了一些实用方法,使编写 equals 和 hash 代码变得更容易,但你所要做的就是省略一个特定的属性……首先不要用那个特定的属性写位。
-
另一方面,如果您在谈论 Eclipse 的标准 equals/hashcode 生成器,对话框会明确询问您要包含哪些属性。
-
你确定那个路易斯吗? sourceforge.net/projects/guavaeclipse
-
SC 所以这个问题。我今天遇到了一个障碍,我只是在所有东西上生成 equals 方法。我后来发现,其中一处房产不应该在那里。没什么大不了的,因为测试用例很可靠并指出了这一点。所以我很好奇是否有办法对属性进行注释......我真的不认为有办法,但无论如何都要问。
-
@JasonMcD:啊。这本身不是番石榴的一部分。有人在 Guava 之上构建了它,但命名并不清楚。