Java中类的私有枚举位置

miv*_*lin 18 java enums inner-classes

在java中声明类中的枚举时,我已经看到了这两种方法:

1)

public class MyClass {

    private enum MyEnum {
        A, B, C;
    }

    /* Static fields */

    /* Instance variables */

    /* Methods */
}
Run Code Online (Sandbox Code Playgroud)

2)

public class MyClass {

    /* Static fields */

    /* Instance variables */

    /* Methods */

    private enum MyEnum {
        A, B, C;
    }
}
Run Code Online (Sandbox Code Playgroud)

哪一个最常用?这有什么约定吗?

Joe*_*hel 19

通常在Java中,嵌套数据类型(例如,类,枚举)位于文件的底部.

但是,对于简短的私人枚举,比如你发布的那个(感觉更像是字段),我会选择#1.

对于更长的枚举,我要么使用#2,要么将它们放在一个单独的文件中.