【问题标题】:what does this mean: 'private' modifier out of order with the JLS suggestions这是什么意思:“私人”修饰符与 JLS 建议不符
【发布时间】:2016-01-19 21:29:20
【问题描述】:

在将“final”添加到 myItem 声明之前,我首先收到此警告:

可以将私有字段“myItem”设为最终字段;它只在 声明或构造函数。

private Item myItem;

添加final后,这是我得到的警告:

'private' 修饰符与 JLS 建议不符。

final private Item myItem;

有人知道我为什么会得到这个吗? 我做了一些研究,但似乎找不到任何解决这个问题的方法。

【问题讨论】:

    标签: java eclipse-plugin field warnings


    【解决方案1】:

    首先,如果它们在其一生中绝对不会改变,那么制作 final 只是一个好习惯。这有助于推理对象的可变性。

    对于第二个警告,您正在寻找 JLS 第 8.1.1、8.3.1 和 8.4.1 节。

    publicprivate 应位于 static 之前,而后者应位于 final 之前。

    【讨论】:

      【解决方案2】:

      通常的顺序是privatefinal 之前,如下所示:

      private final Item myItem;
      

      如果修饰符的顺序不同,代码仍然可以编译并且行为相同,但是习惯了 JLS 建议的标准顺序的人会认为您的代码看起来很奇怪。

      【讨论】:

        【解决方案3】:

        这个警告的原因是不同类型修饰符的顺序,请检查the answer of this question

        对于这种情况,只需将访问修饰符放在 final 之前。

        【讨论】:

          猜你喜欢
          • 2012-05-14
          • 2014-05-16
          • 2012-01-28
          • 1970-01-01
          • 1970-01-01
          • 2010-09-13
          • 1970-01-01
          • 2012-07-08
          • 2018-04-24
          相关资源
          最近更新 更多