关于字段的私有静态最终关键字的快速Java问题

Spe*_*cer 32 java static final private

我宣布一个字段:

private static final String filename = "filename.txt";
Run Code Online (Sandbox Code Playgroud)

首先,private static final物质的顺序是什么?如果没有,是否有标准接受的序列或惯例?

其次,filename在我的应用程序中是固定的.这是最好的存储价值吗?

Hob*_*obo 49

我将Checkstyle与Eclipse一起使用,如果声明与您指定的声明的顺序不同,则会引发警告,引用Java语言规范(JLS).例如,

private final static String filename = "filename.txt";
Run Code Online (Sandbox Code Playgroud)

结果是

'static' modifier out of order with the JLS suggestions.
Run Code Online (Sandbox Code Playgroud)

他们有这个页面列出了他们期望的顺序,虽然按照该页面上的链接到JLS我看不到任何东西来支持他们建议的订单的断言.

话虽如此,他们建议的顺序似乎与我见过的大多数代码中的顺序相对应,所以它似乎与任何采用的约定一样好.


Mat*_*hen 23

  1. 不,但这是我通常看到的序列.

  2. 这是一个合理的选择,但有些人更喜欢配置文件,属性或其他文件格式(例如XML).这样,您可以更改文件名而无需重新编译.

  • 将其作为资源加载. (2认同)

Jes*_*per 14

在Java中常见的是给常量(static final值)一个全大写的名称,所以我会写:

private static final String FILENAME = "filename.txt";
Run Code Online (Sandbox Code Playgroud)

另请参阅Java编程语言的代码约定.(这些是大多数Java程序员使用的Sun代码约定).


fro*_*tto 5

这些关键字最受欢迎的顺序是private static final.您还可以使用PSF模式记住这些关键字的顺序:

P => private/public/protected
S => static/abstract/...
F => final