当前位置: 首页 > 知识库问答 >
问题:

修改关键字顺序在Java

常博裕
2023-03-14

每次我用Java编写的方法的关键字都比public void多,每次我都用另一种方式编写它。有时“static public void”有时“public static void”等。

这些关键字的最佳顺序(最佳实践)是什么?

[abstract/static][final][synchronized][public/private/protected][结果类型]???

共有3个答案

司寇昱
2023-03-14

Java语言规范中提到了修饰符的自定义使用顺序(因此无需有自己的意见;-)。例如,对于方法修饰符,您可以找到以下定义(摘录):

MethodModifiers:
    MethodModifier
    MethodModifiers MethodModifier

MethodModifier: one of
    Annotation public protected private abstract
    static final synchronized native strictfp

如果两个或多个(不同的)方法修饰符出现在方法声明中,通常(尽管不是必需的),它们出现的顺序与上面所示的方法修饰符的生产顺序一致。

您可以在其他几个指定修饰符用法的地方找到这句话,例如,这里是字段修饰符。

(这里多半是抄袭我的另一个回答)。

万俟浩
2023-03-14

Checkstyle(实现Java语言规范部分8.1.1, 8.3.1和8.4.3的建议)表示:

  1. 公众
  2. 受保护的
  3. 私人
  4. 摘要
  5. 默认值
  6. 静态
  7. 期末考试
  8. 暂时的
  9. 易变的
  10. 已同步
  11. 本地人
  12. strictfp
东门俊智
2023-03-14

从理论上讲,不管你说的是publicstaticfinal还是finalstaticpublic,但是如果你遵循通常的惯例,其他人将能够更容易地阅读你的代码。以下是首选顺序:

[公共|受保护|私人]

静止的

摘要

同步

[瞬态|挥发性]

最终

出生地的

严格的fp

[int | long | String | class | enum | interface等]

 类似资料:
  • 使用CodeModel,有没有一种方法可以控制修饰符的顺序?特别是在创建字段时。 https://sonar43.spring.io/rules/show/squid:modifiersordercheck?layout=false http://checkstyle.sourceforge.net/config_modifier.html 修饰符应按以下顺序出现: 批注 公用 受保护 专用 摘要

  • 问题内容: 我知道我的问题似乎无效,但这是真实的。在编写Java时,我必须使用单词以从classpath导入类。用户需要在Java中启动某些对象和其他关键字。我的问题是,通过定义新的关键字以及它们的作用或修改现有的关键字来做同样的事情,我们是否甚至有一点点的改进能力和这种出色的语言。例如,而不是编写: 有什么可能将单词修改为波斯尼亚语,例如: 一切都以相同的方式进行。在获得想法之前,请不要关闭。

  • 我想尝试并维护某个关键字顺序(示例)。Eclipse是否有一个选项或插件,在订单未维护时发出警告?奖励积分,如果我可以: 自动重构这样的实例 基于正则表达式发出自定义警告(?)

  • 问题内容: 我有一本字典 但是,我需要字典的顺序不同: 做这个的最好方式是什么? 问题答案: 字典 没有顺序 。因此,没有办法做到这一点。 如果您使用的是python2.7 +,则可以使用-在这种情况下,您可以使用检索项目列表,然后将其反向并从反向列表中创建一个新项: 如果您使用的是旧版python,则可以从http://code.activestate.com/recipes/576693/获得

  • 问题内容: 码: 打印。我不确定该方法如何确定l中关键字的顺序。但是,我希望能够以“适当”的顺序检索关键字。当然,正确的顺序将创建列表。 和这个: 问题答案: 你可以使用OrderedDict(需要Python 2.7)或更高版本。 另外,请注意,由于dict你使用进行创建的操作已经忘记了元素的顺序,因此该操作无效。相反,你想使用。 如文档中所述,对于低于python 2.7的版本,你可以使用此配

  • 问题内容: 我正在寻找一个有序的关联数组,即有序的字典的可靠实现。我想要按键而不是插入顺序排序。 更准确地说,我正在寻找一种int-to-float(或另一种用例是string-to-float)映射结构的节省空间的实现,该结构的结构是: 有序迭代为O(n) 随机访问为O(1) 我想到的最好的方法是将字典和键列表粘合在一起,使最后一个键按等分和插入顺序排列。 还有更好的主意吗? 问题答案: “随机