在同一个文件中声明新类是否很好"形式"?

Ton*_*ark 0 java coding-style class conventions

我在Python中编写了很多代码,并经常创建类.现在,我不确定这是不是很好的Python表单,但我只是在与main()相同的文件中声明一个类.

class foo {
...
} 
Run Code Online (Sandbox Code Playgroud)

我想知道在Java中它是否是一个很好的形式来做同样的事情?

例如,

class foo {
    public static int name;
    public static int numPoints;
    public static int[] points;
}

public class bar {

    public static void main(String[] args) {
    ...
    }
}
Run Code Online (Sandbox Code Playgroud)

不会在Eclipse中抛出错误,因此必须允许它.但是可以吗?将该类声明为单独的文件会更好吗?

编辑:我只是想强调,我的新类字面上只是一个容器,可以多次保存相同类型的数据,而字面上只有3个值.所以总共大约5行代码.问题是 - 这是否值得一个新文件?

gus*_*afc 5

取决于你希望班级做什么.如果它仅由具有main方法的类使用,那么在同一文件中声明它几乎没有什么损失,尽管我更愿意将其声明为private static内部类,为了清晰起见并且更少名称空间杂乱:

class Program {
    public static void main(String[] args){ ... }
    private static class Foo {
        public int name;
        public int numPoints;
        public int[] points;
    }
}
Run Code Online (Sandbox Code Playgroud)

如果> 1个其他类使用您的类,通常认为将它放在自己的文件中是一种好的形式.如果它被声明为a public class,则它必须位于与该类同名的单独文件中.(当然,除非它是一个内在的类.:)