努力理解Java文件的工作流
当您有多个Java文件时,我很难理解工作流 myNode.java:努力理解Java文件的工作流,java,Java,当您有多个Java文件时,我很难理解工作流 myNode.java: package x; class myNode { private myNode next = null; private int d; myNode(int d) { this.d = d; } void append(int d) { myNode curr = this; while (curr.next != null) {
package x;
class myNode {
private myNode next = null;
private int d;
myNode(int d) {
this.d = d;
}
void append(int d) {
myNode curr = this;
while (curr.next != null) {
curr = curr.next;
}
curr.next = new myNode(d);
}
}
myMain.java:
package x;
class myMain {
public static void main() {
myNode x = new myNode(1);
x.append(2);
}
}
当我试图编译myMain.java时,我收到以下错误消息
error: cannot find symbol
myNode x = new myNode(1);
^
symbol: class myNode
location: class myMain
您被告知,如果java类位于同一个包中,则可以从其他java类访问它们,而无需显式导入它们。没错。但这还不是全部 javac不会尝试访问您没有明确告诉它要访问的java文件。因此,当您尝试使用javac进行编译时,必须在命令行中指定要编译的所有文件,如下所示:javac MyClass.java AnotherClass.java
另外,请注意,java中的惯例是使用大写字母作为类名。您导入了myNode.java文件吗?请确切地告诉我们您是如何编译myMain.java的。您可能会发现,在包x中的myNode.java会很有帮助吗?谢谢!我只运行了javacmyclass.java。我尝试以您建议的格式运行该命令,但它给出了相同的错误。然后我改变了我的班名,以大写字母开头,这真是太神奇了!