Java 中 Javac Cannot Find Symbol 错误
本篇文章介绍如何解决Java的 javac cannot find symbol 错误。
在 Java 中 javac cannot find symbol 错误
Javac 是一个读取用 Java 编写的类和接口并将它们编译为字节码的工具。 javac 是 CLI 中与 Java 文件一起使用的命令。
当我们尝试运行一个包含在程序中定义或声明的变量的 Java 文件时,会发生 javac 找不到符号错误。 javac 找不到符号错误意味着我们引用了编译器不知道的东西。
当我们的程序中遇到以下问题时,就会出现 javac 找不到符号错误。
- 文字,包括数字和文本。
- 关键字如 true、false、class、while。
- 运算符和其他非字母数字标记,例如 -、/、+、=、{。
- Reader、main、toString 等标识符。
- 空白和注释。
让我们创建一个将抛出 javac 找不到符号的示例。
public class Example {
public static void main(String... args) {
int a = 10;
int b = 20;
int c = 30;
sum = a + b + c; // sum is not declared
System.out.println(sum);
}
}
上面的代码有一个变量sum,之前没有声明,所以会抛出找不到符号错误。 在CMD中获取Java文件的路径并使用javac编译该文件。
使用以下命令。
javac Example.java
上面的代码将抛出以下错误。
C:\>javac Example.java
Example.java:7: error: cannot find symbol
sum = a + b + c; // sum is not declared
^
symbol: variable sum
location: class Example
Example.java:8: error: cannot find symbol
System.out.println(sum);
^
symbol: variable sum
location: class Example
2 errors
要解决此问题,请确保所有变量在使用之前都已声明。 查看解决方案:
public class Example {
public static void main(String... args) {
int a = 10;
int b = 20;
int c = 30;
int sum; // declare sum
sum = a + b + c;
System.out.println(sum);
}
}
使用相同的命令运行程序,程序将成功编译。
相关文章
Java 错误 Java.Net.SocketException: Network Is Unreachable
发布时间:2023/07/16 浏览次数:963 分类:Java
-
今天我们就来讨论一下Java编程时出现java.net.SocketException: Network is unreachable异常的可能原因及解决方法。Java中出现java.net.SocketException: Network is unreachable的可能原因及解决方案
Java 错误 Java.Net.ConnectException: Connection Timed Out
发布时间:2023/07/16 浏览次数:235 分类:Java
-
本篇文章将重点介绍如何使用此包进行基本的网络调用以及可能面临和解决的错误。在 Java 中使用 java.net 进行网络调用 进行网络调用是 Java 开发人员每天面临的最重要的事情之一。
Java 中错误 Attempt to Invoke Virtual Method on a Null Object Reference
发布时间:2023/07/16 浏览次数:948 分类:Java
-
本篇文章介绍如何解决 Java 中的 Attempt to invoke virtual method on a null object reference 错误。Java 中 Attempt to invoke virtual method on a null object reference 错误
Java 错误 Java.Security.InvalidKeyException: Illegal Key Size
发布时间:2023/07/15 浏览次数:644 分类:Java
-
本篇文章介绍包含 java.security.InvalidKeyException: Illegal key size 的 Java 代码。 然后,我们将了解其可能的原因。最后,它通过消除指定的错误来引导我们找到解决方案。
Java 错误 Java.SQL.SQLException: Access Denied for User Root@Localhost
发布时间:2023/07/15 浏览次数:165 分类:Java
-
本篇文章介绍如何解决 Java 中的 java.sql.SQLException: Access Denied for user 'root'@'localhost' 错误。修复 Java 中的 java.sql.SQLException: Access denied for user 'root'@'localhost' (using password: YES)
Java 错误 Gateway Process Exited Before Sending Its Port Number
发布时间:2023/07/15 浏览次数:885 分类:Java
-
本篇文章介绍了 Java 中 Java gateway process exited before sending the driver its port number 错误 Java gateway process exited before sending the driver its port number 错误
修复 Java 中 Java.Net.BindException: Address Already in Use: Bind 错误
发布时间:2023/07/15 浏览次数:250 分类:Java
-
本篇文章介绍了 Java 中的 java.net.BindException:Address already in use: Bind 错误。修复Java 中的 java.net.BindException:Address already in use: Bind
Java 中错误 Unsupported Major Minor Version
发布时间:2023/07/14 浏览次数:133 分类:Java
-
出现 Unsupported Major.minor version 错误或 Java.lang.UnsupportedClassVersionError 的原因是运行时 JDK 较低,编译时 JDK 较高。 本篇文章介绍如何解决Java中不支持的major.minor版本。
Java 错误 Error:Java: Javactask: Source Release 1.8 Requires Target Release 1.8
发布时间:2023/07/14 浏览次数:274 分类:Java
-
在使用IntelliJ for Java时,无法编译Java程序是一个常见的问题。 本教程提供了此错误的解决方案。Error:Java: Javactask: Source Release 1.8 Requires Target Release 1.8 错误