1
@Override
    public void onCancel() {
        // TODO Auto-generated method stub

错误:SoftKeyboard 类型的 onCancel() 方法必须覆盖超类方法 SoftKeyboard.java /EmotePractice/src/com/emote 第 691 行 Java 问题

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

4

2 回答 2

1

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

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

@Override 表示方法声明旨在覆盖超类中的方法声明。如果使用此注解类型对方法进行注解但未覆盖超类方法,则编译器需要生成错误消息。

于 2012-04-09T00:49:55.593 回答
0

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

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

于 2012-04-09T00:44:34.033 回答