2012-04-09 140 views
1
@Override 
    public void onCancel() { 
     // TODO Auto-generated method stub 

ERROR:类型SoftKeyboard的方法onCancel()必须覆盖一个超类方法SoftKeyboard.java/EmotePractice/SRC/COM /表情线691的Java问题这是什么错误代码平均值(附代码)

超?我认为@Override是为了捕捉语法错误,为什么这么说?

回答

1

是否确定超类的超类有一个名为onCancel()的方法,其中没有参数和void返回类型?如果答案为否,请尝试删除@Override注释并查看它是否适用于您。

@Override注释用于指示该方法覆盖超类中相同声明的方法。从javadocs

@Override Indicates that a method declaration is intended to override a method declaration in a superclass. If a method is annotated with this annotation type but does not override a superclass method, compilers are required to generate an error message.

+0

它的工作!!!!谢谢!! – 2012-04-09 00:55:33

+0

@VictoriaC不客气!如果这个答案是有用的你,请考虑接受它(点击左边的复选标记) – 2012-04-09 00:56:21

0

你把它放在代码块可能有一些错误。例如,这个SoftKeyboard可能具有其他必须被覆盖或可能首先定义的功能,所以这是一个错误,一旦满足其他条件就会自动消失。无论哪种方式,请粘贴更多的上下文代码,以便我们能够更好地隔离问题。

顺便说一句@Override不会捕获用语法产生的错误,而是从字面上覆盖超类的预定义方法。

+0

我去掉了覆盖和错误走了谢谢你的指正什么@override确实我在BlogSpot的,这主要是为了赶上语法错误的理解为,如果电脑说嘿,我们不能继续,因为你拼错....(这是字面上给出的例子)谢谢你的反馈!我是新手! – 2012-04-09 00:56:29

+0

很高兴编译你的代码。确保运行它并进行测试,以确保取消执行代码按预期执行。 – 2012-04-09 00:58:19

+0

我会有一种奇怪的感觉,我会回来与一个问题有关的oncancel .... :( – 2012-04-09 00:59:18