这个问题在这里已经有了答案:
What does a "Cannot find symbol" or "Cannot resolve symbol" error mean?
(17 个回答)
1年前关闭。
我正在尝试用 Java 编译我的代码,但每次我尝试它都会给我一个错误,说它找不到另一个类的符号。例如:
package helloWorld;
public class FirstClass {
public static void main(String[] args) {
SecondClass secondClass = new SecondClass();
class.HelloWorld();
}
}
我的另一个类是:package helloWorld;
public class SecondClass {
public void HelloWorld() {
System.out.println("Hello World");
}
}
如果我尝试编译代码,它将指向 SecondClass 声明并说错误:找不到符号。该代码可以在 Eclipse 或 NetBeans 等 IDE 中正常运行。
最佳答案
class 是关键字之一,但您不想用作变量名
SecondClass class = new SecondClass();
class.HelloWorld();
请将变量名称更改为与类不同的名称,然后重试。您不能使用 int、for、class 等关键字作为变量名(或标识符),因为它们是 Java 编程语言语法的一部分。
我进行了以下更改并成功运行
public class FirstClass {
public static void main(String[] args) {
SecondClass class1 = new SecondClass();
class1.HelloWorld();
}
}
Directory of D:\workspace_europa\DatastructureAndAlgorithms\src
09/13/2020 10:06 AM <DIR> .
09/13/2020 10:06 AM <DIR> ..
09/13/2020 10:11 AM 330 FirstClass.class
09/13/2020 10:06 AM 168 FirstClass.java
09/13/2020 10:11 AM 408 SecondClass.class
09/13/2020 09:57 AM 131 SecondClass.java
D:\workspace_europa\DatastructureAndAlgorithms\src>d:\InstalledProgramms\Java\jdk1.5.0_22\bin\javac.exe -cp . FirstClass.java
D:\workspace_europa\DatastructureAndAlgorithms\src>d:\InstalledProgramms\Java\jdk1.5.0_22\bin\javac.exe -cp . FirstClass.java
D:\workspace_europa\DatastructureAndAlgorithms\src>d:\InstalledProgramms\Java\jdk1.5.0_22\bin\java.exe -cp . FirstClass
Hello World
如果您仍然面临问题,那么在编译和运行时使用 -verbose 标志可以让您领先D:\workspace_europa\DatastructureAndAlgorithms\src>d:\InstalledProgramms\Java\jdk1.5.0_22\bin\javac.exe -verbose -cp . FirstClass.java
D:\workspace_europa\DatastructureAndAlgorithms\src>d:\InstalledProgramms\Java\jdk1.5.0_22\bin\java.exe -verbose -cp . FirstClass
关于java - Windows CMD 无法调用另一个类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63867077/