【问题标题】:cannot find symbol java.awt and java.util找不到符号 java.awt 和 java.util
【发布时间】:2016-09-28 18:45:00
【问题描述】:

我正在使用 NB。ide 给出了找不到符号 java.awt 的错误。尝试在 eclipse.it 中运行相同的代码。它也给出了相同的错误。即使在创建新的 JFrame 时,它​​也会给出错误找不到符号。

一个错误:

【问题讨论】:

  • 尝试为项目设置JDK。此链接有帮助:stackoverflow.com/questions/4128256/…
  • @AlexChermenin 我已经尝试了上述解决方案,但仍然出现相同的错误
  • 你是否有一个名为java的类或字段?
  • @ThomasKläger 是的,我有一个名为 java 的类....

标签: java swing netbeans


【解决方案1】:

一个名为 java 的类隐藏了包名 java,参见 Java Language Specification 6.4.2

一个简单的名称可能出现在它可能被解释为变量、类型或包的名称的上下文中。在这些情况下,§6.5 的规则指定将优先选择变量而不是类型,并且将优先选择类型而不是包。因此,有时可能无法通过其简单名称来引用可见类型或包声明。我们说这样的声明是模糊的。

这意味着在包含 java 类的包中,您将无法通过限定名称引用任何 java.* 包中的类。

但是您仍然可以导入您需要的类并通过简单的名称引用它们:

import java.util.logging.Logger;
import java.awt.EventQueue;

// within some method:
    Logger.getLogger(....);

【讨论】:

    猜你喜欢
    • 2021-05-21
    • 1970-01-01
    • 2014-09-05
    • 2014-01-25
    • 1970-01-01
    • 2014-04-11
    • 2013-09-12
    • 2013-06-06
    • 2017-10-01
    相关资源
    最近更新 更多