【发布时间】:2012-12-16 22:49:45
【问题描述】:
在 Eclipse 中,默认的“成员排序顺序”(在 Preferences - Java - Appearance - Members Sort Order 中)是:
- 类型
- 静态字段
- 静态初始化器
- 静态方法
- 字段
- 初始化器
- 构造函数
- 方法
但是Oracle's Java Code Conventions 说顺序应该是:
- 类(静态)变量
- 实例变量
- 构造函数
- 方法
所以 Oracle 在排序时不区分静态和非静态方法。由于这个原因,我收到了 Checkstyle 错误:
实例变量定义顺序错误。
所以我想知道是在 Eclipse 中修改顺序还是禁用 Checkstyle 检查。倾向于禁用 Checkstyle 检查,这样加入项目的每个人都不必修改他们的 Eclipse 设置,但忽略官方约定似乎有点错误。
人们的看法是什么?还有其他方法可以解决这个问题吗?
【问题讨论】:
-
是的 - 没有看到它,它是一个非常相似的 q,但是略读一下,对于在 Eclipse 中做什么并不明智!
-
您应该让 Eclipse 和 Checkstyle 都符合您的判断正确的做法。您应该在考虑他们的意见后做出判断,但这在很大程度上是您的决定。就个人而言,我会将静态方法排在最前面,比如 Eclipse,因为它很有意义(静态方法与实例方法完全不同),这就是我所见过的所有代码所做的。
-
另外,我注意到 Sunacle 甚至不遵循他们自己的建议 - 在
String中,静态字段位于实例字段之后,并且有一个静态方法在构造函数中。
标签: java eclipse static members