java-7 - Java 7 中的类型错误

标签 java-7

我有一个扩展 JDialog 的对话框类。这个类中的一个方法是这样的:

public char getType()
{
return ((String)fileTypeCombo.getSelectedItem()).charAt(0);
}

其中 fileTypeCombo 是这样的:

JComboBox fileTypeCombo = new JComboBox(
            new String[] { "Local", "Shared", "Remote" } );

当我尝试使用 Java 7 进行编译时,出现以下错误:

[javac] /home/satin/decodes-8.0/lrgs/gui/NetlistDialog.java:112: error: getType() in NetlistDialog cannot override getType() in Window
[javac]     public char getType()
[javac]                 ^
[javac]   return type char is not compatible with Type

它可以在 Java 6 中正常编译。

问候。

最佳答案

这是因为Window class中添加了一个方法在 Java 7 中。

父类(super class) Window 在 Java 7 中具有用于方法签名的 public Window.Type getType()。您尝试重写该方法,但正在返回char 而不是 Window.Type 对象,因此发生编译错误。

Java 6 that method doesn't exist ,这样您就不会收到任何错误。

关于java-7 - Java 7 中的类型错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9064889/

相关文章:

java - Java 7.x 中的验证树不起作用(在 Java 6.x 中很好)

Windows 上的 Java WatchService 在复制内容之前通知文件夹创建

通过 ThreadGroupContext 注册的 Java7 PropertyEditors

java - JDK7 的开源代码覆盖率库?

java - java 7在某些情况下会自动使用多核吗?

java - 通过bash脚本在Ubuntu 16.04上安装Java7

java - 为java的try with resources语句管理的资源声明自变量

java - IDE 的正确 JVM 文件夹

java - 从技术上讲,Oracle JDK 和 OpenJDK 之间的主要区别是什么?

java - 为什么要对 List< 进行泛型转换?将 Set..> 扩展到 List<Set..> 在 Sun JDK 6 上成功但在 Oracle JDK 7 上编译失败?