5

Eclipse 有一个名为“字段声明隐藏另一个字段或变量”的 java 编译器设置,可以设置为警告/错误。

在您看来,这个警告有多重要?

处理这个问题的好标准方法是什么?

发生这种情况的代码示例:

public class Test {
   private String caption = null;

   public Test(String caption) { // here
     this.caption = caption;
   }
}

我见过重命名字段的解决方案,即“fCaption”,但这会导致可以生成的自动 getter/setter 具有奇怪的名称 ( getfCaption())。不是不可读,而是丑陋...

编辑:哦,是的,有可能重命名方法签名Test(String caption_)或类似的东西,但这最终会使 javadoc 看起来很奇怪。

4

3 回答 3

11

在我看来,这是一个非常有用的选项,应该启用它以显示编译器警告。有一个选项(在我的版本中至少是 Eclipse 3.5.2,Java EE 特性 1.2.2)可以在构造函数和 getter/setter 中进一步启用/禁用它,以防止误报。

eclipse 编译器设置

于 2010-11-08T10:44:44.750 回答
1

我想说您只是禁用此警告-在您的约定中似乎没有用。难怪它默认被忽略。

于 2010-11-08T10:22:47.113 回答
0

我将这些设置为“错误”。如果一个类及其父类都有一个同名的字段,我不想浪费任何时间试图弄清楚为什么我似乎在为该字段分配一个值,但它似乎永远不会改变!

于 2011-01-09T13:37:24.160 回答