2

我想知道是否有一种在 Java 中创建新数据结构以避免创建新类文件的好方法。根据这篇文章,Java 相当于C中的 struct 只是一个类。但是,我发现为仅具有几个公共字段的类创建一个全新的文件是多余的,例如:点的 x,y 坐标。在C中,可以在使用它的 .c 文件中定义数据结构,这要简单得多。这实际上是Java中的唯一方法吗?

4

4 回答 4

4

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

于 2013-03-29T08:24:28.273 回答
4

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

public class Test {

    class InnerOne {
    }

    void m() {
        class InnerMost {
        }
    }
}

class Dummy {
}

class OnMore {
}
于 2013-03-29T08:24:37.493 回答
1

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

至于java中的每个数据结构的类,java只有一种创建抽象数据类型的方法——类,如果你对此不满意——尝试使用其他JVM语言,比如Scala,在这方面要灵活得多。

于 2013-03-29T08:23:38.620 回答
0

Java 是一种面向对象的编程语言,所以一切都适用于类,你不应该尝试像使用 C 一样使用 Java 进行编程。

如果你想在一个类中定义一个数据结构,你应该使用InnerClass ,官方文档上有一个很好的例子。

于 2013-03-29T08:22:07.380 回答