使用Eclipse声明多个类

时间:2012-03-20 19:22:26

标签: java

有没有办法使用Eclipse在同一个.java文件中声明2个类 - 也就是编译器如何区分每个声明类的.class。

例如

public class ThisTest
{
    public static void main(String[] args)
    {
    }
}

class SimpleArray
{

}
谢谢你的时间。

2 个答案:

答案 0 :(得分:3)

  

有没有办法使用Eclipse在同一个.java文件中声明2个类

是的,您可以在单个.java文件中定义多个类,但每个文件中最多只能有一个一个公共类。 (就像你的例子一样。)

请注意如果在.java文件中有公共类,则该类的名称必须与.java文件的名称相同。

  

编译器如何区分每个声明类的.class。

.class文件的名称不依赖于.java文件的名称,而是依赖于类声明的标识符。

如果你有

class A {}
class B {}

在名为Classes.java的文件中,如果您编译它,您将获得A.classB.class

答案 1 :(得分:1)

是的,完全像你的例子。

额外课程需要非公开

您还可以定义内部/嵌套类。在这种情况下,您应该调查差异

Java inner class and static nested class

public class ThisTest
{
    public static void main(String[] args)
    {
    }


    static class SimpleArray
    {

    }

    class SimpleArray2 {}
}
class Buddy {}

每个类都将位于类似于包的目录中的自己的.class文件中。 嵌套类使其主机前缀并用'$'分隔。 上述情况导致四个类文件

  • ThisTest.class
  • 这项测试$ SimpleArray.class
  • 这项测试$ SimpleArray2.class
  • Buddy.class

只需检查eclipse项目的bin或classes文件夹即可。