gpt4 book ai didi

java - 从另一个java文件访问多个类

转载 作者:行者123 更新时间:2023-12-01 09:07:42 27 4
gpt4 key购买 nike

我陷入了一个作业问题,任务只是将包含多个类的单个 java 文件分解为多个 java 文件,然后导入这些 java 文件,以便原始项目仍然有效。(总共 4 个类,将其中 3 个移动到单独的文件中)

我创建一个新项目并将一个类移至该新项目。然后将其导入到我的原始文件中,并将必要的功能设置为公共(public),就可以了。

对于其他两个类,我必须创建一个具有完全不同名称的新项目(例如 Five)并粘贴类 ThreeFour 进入此项目。然后将这两个类导入到原文件中。

我这样做了,它说类 ThreeFour 应该是公共(public)的。然而,这是不可能的,因为类 Five 已经是公共(public)的。如何从原始文件访问这两个类?

项目一:(这是我尝试运行的项目)

package one;
import two.Two;
import five.Five;

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

class Customer{
...//this class accesses attributes and methods of classes
//Two, Three and Four. The error occurs for methods from classes Three and Four
}

项目二

package two;
public class Two {
public static void main(String[] args) {
...
}
)

项目五

package five;
public class Five {
public static void main(String[] args) {
...
}
}

class Three{
...
}

class Four{
...
}

最佳答案

看看这个问题(并回答):Can a java file have more than one class?

每个文件只能有一个公共(public)类。如果您不希望 ThreeFour 作为 Five 中的内部静态类,则必须将它们放在单独的文件中 Three.java Four.java

此外,package 可以相当于一个文件夹,因此,如果您的类位于同一个文件夹中(一个模块/逻辑单元的一部分),那么它们可以全部位于同一个包中,例如 主要

因此,您的包 main 将包含 Java 文件中的所有类(这也是一个很好的做法,除非一个类在逻辑上是另一个类的子单元)。另请注意,同一包中的类不需要导入。它们甚至不必公开。

关于java - 从另一个java文件访问多个类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41130940/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com