java - 编译尝试给出错误,显示 "error: class, interface, or enum expected",但错误指向汉字?

标签 java enums

我一直在尝试为我启动的在线 Java 类执行 HelloWorld,但遇到了一个奇怪的错误。我确实在这个网站上四处查看,虽然我确实看到了一些类似的错误实例,但没有一个与我遇到的问题完全相同。

因此,在我的类(class)中,我将下面的代码(按照视频中的说明,复制每个字母、括号和符号)输入到记事本中并保存,设置 javac,并尝试运行 javac。

public class HelloWorld {

   public static void main(String[] args) {

      System.out.println("Hello world!");

   }
}

现在,当我运行 javac 时,它给出了这个错误。

enter image description here

(对我来说,\在命令提示符上显示为一个奇怪的类似 W 的符号,但它仍然可以正常工作)。

小箭头应该指向文本文件中的错误,但问题是由于某种原因它显示为汉字。我无法弄清楚导致此问题的原因,但我的猜测是这超出了本文本文档的范围。但是,我的系统不使用中文,系统语言环境也不是中文,所以我不知道它可能是什么。我不认为它可以是任何括号,因为它们对我来说看起来很准确,除非有一些我完全错过的东西。任何帮助将不胜感激。

最佳答案

看起来您的程序文件中的某些内容被解释为多字节字符。错误中的字符似乎位于 public 中的“p”之前,这就是编译器给出错误消息的原因。它需要一个关键字并获得一个汉字。

你用的什么编辑器?我认为真正的问题在于你的编辑器是如何设置的。此错误消息只是一个症状。另一种可能性是您的系统设置为将某些字节序列解释为中文。这可以解释“\”被解释为一个字符,以及以大括号开头并通过“p”的内容被视为它们的序列。

关于java - 编译尝试给出错误,显示 "error: class, interface, or enum expected",但错误指向汉字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46127131/

相关文章:

java - 您应该在哪里配置内容安全策略?

c++ - 使用枚举成员模板化成员函数

c - 您是否需要在 C 枚举的最后一个成员之后添加一个额外的 ","?

java - 负数的立方根

c - 为什么 C 编译器不检查枚举?

java - 这些类和子类静态 block 何时执行(对于枚举)?

c# - Enum.HasFlag,为什么没有 Enum.SetFlag?

java - 迁移到 Android Studio 2.2 后出现 DexIndexOverflowException

java - 通过gson反序列化对象导致空指针异常

java - 如何在实时线程中向 HTTP 请求发送 HTTP 响应