2013-03-29 104 views
2

我想知道是否有一种很好的方法在Java中创建新的数据结构,避免创建新的类文件。根据this post,Java的与C中struct结构的等价只是一个类。然而,我发现为一个只有一些公共字段的类创建一个全新的文件是多余的,例如:一个点的x,y坐标。在C中,数据结构可以在使用它的.c文件中定义,这非常简单。这实际上是Java的唯一途径吗?在Java中创建数据结构

+0

在同一个.java文件中使用内部类或多个类(当然,只有一个公共类)。但是这仍然会创建多个类文件。 –

+0

你甚至可以在方法中声明一个类。 –

回答

4

您可以使用inner/nested classes。你将只有一个.java文件,但编译时嵌套类都会有自己的.class文件。

1

您可以在一个.java文件中创建几个小的辅助类,但它们不能公开。 因此,例如,您可以创建一个公共类,其名称对应于一个文件和一对非公开的助手类。

对于java中每个数据结构的类,java只有一种创建抽象数据类型的方法 - 类,如果您对此不满意 - 尝试使用其他JVM语言(如Scala),它会更灵活对此。

4

如果您需要数据结构,您必须创建一个类。只是为了避免创建多个.java文件,您可以将这些类放在一个.java文件中。假设,Test.java-

public class Test { 

    class InnerOne { 
    } 

    void m() { 
     class InnerMost { 
     } 
    } 
} 

class Dummy { 
} 

class OnMore { 
}