当前位置: 首页 > 面试题库 >

为什么我使用@Override得到“必须重写超类方法”?

狄钧
2023-03-14
问题内容

以下代码在该public void onClick行生成此错误消息。

这行有多个标记
-实现android.view.View.OnClickListener.onClick
-new View.OnClickListener(){}类型的onClick(View)方法必须覆盖超类方法

我不明白为什么。这段代码摘自我所见过的众多示例。什么可能是错的?

private Button audioButton;

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    audioButton = (Button) findViewById(R.id.imageButton1);
    audioButton.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View button) {
            if (button.isSelected()) {
                button.setSelected(false);
            }
            else {
                button.setSelected(true);
            }
        }
    });
}

问题答案:

检查项目的属性,并验证 Java Compiler- > Compiler合规性级别是否设置为 1.6



 类似资料:
  • 本文向大家介绍hashCode 与 equals ?为什么重写equals时必须重写hashCode方法?相关面试题,主要包含被问及hashCode 与 equals ?为什么重写equals时必须重写hashCode方法?时的应答技巧和注意事项,需要的朋友参考一下 面试官可能会问你:“你重写过 hashcode 和 equals 么,为什么重写equals时必须重写hashCode方法?” ha

  • 本文向大家介绍为什么在重写 equals方法的同时必须重写 hashcode方法,包括了为什么在重写 equals方法的同时必须重写 hashcode方法的使用技巧和注意事项,需要的朋友参考一下 我们都知道Java语言是完全面向对象的,在java中,所有的对象都是继承于Object类。 其 equals 方法比较的是两个对象的引用指向的地址,hashcode 是一个本地方法,返回的是对象地址值。O

  • 关于在最新版本的GCC和Clang中编译有几个问题:实验::filessystems链接器错误 但是现在< code>filesystem已经被c 17接受,所以不再需要< code>experimental或< code>-lstdc fs标志,对吗? 错了,我甚至不能 只给了我< code >实验版本,我怎么能包括正式接受的版本呢?

  • 我正在使用JUnit 5,并从“软件测试”书中复制了代码,以便创建一个模拟对象进行测试。部分测试器代码是: 我有一个编译器错误,它说“方法isLeap(int)必须覆盖或实现一个超类型方法”。此错误在我覆盖isLeap()方法的行中报告。(@over下面的行) 好吧,令人惊讶的是,这就是我所做的。所以我不知道这是什么抱怨。下面是simpleDate类中的isLeap()方法: 正如您所看到的,测试

  • 我是Android和Java的初学者。我寻找这个错误的答案,但stackOverflow中的任何东西都不适合我的情况。我在读一本书,书中说我们需要使用一个onListItemClick()方法,该方法来自我们创建的扩展ListFragment的类(CrimeListFragment)(使用该方法和类是必需的)。 然而,我不断发现以下错误: 错误说 “CrimeListFragment类型的onLi

  • 我甚至不确定这段代码是否能做任何事情,即使它有效,但我不知道该怎么做才能摆脱“从内部类引用的局部变量必须是最终的或有效的最终”错误消息,该错误消息显示在以“fireballRight[i]”开头的三行上。 任何指导将不胜感激,谷歌似乎并没有帮助我。