我有一个扩展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编译好。
问候。
答案 0 :(得分:3)
这是因为在Java 7中添加了Window class的方法。
超类Window
对于Java 7中的方法签名具有public Window.Type getType()
。您试图覆盖该方法,但返回char
而不是{{1对象,因此发生了编译错误。
在Java 6 that method doesn't exist中,您不会收到任何错误。