You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java新手开发Android待办应用遇Method does not override错误求解决

修复方案:“Method does not override method from its superclass”错误

你的代码里有几个明确的问题,直接导致了这个报错,逐个修正即可解决:

1. 补全缺失的导入语句

代码里用到了Menu、MenuItem、Log类,但没有导入,编译器无法识别这些类型,导致方法签名和父类的不匹配,@Override注解因此报错。在现有导入下方添加:

import android.view.Menu;
import android.view.MenuItem;
import android.util.Log;

2. 修正onCreateOptionsMenu方法的参数错误

你把方法参数名menu误写成了类名Menu,两处调用都出错了:
原错误代码:

getMenuInflater().inflate(R.menu.main_menu, Menu);
return super.onCreateOptionsMenu(Menu);

修改为:

getMenuInflater().inflate(R.menu.main_menu, menu);
return super.onCreateOptionsMenu(menu);

3. 定义缺失的TAG常量

onOptionsItemSelected方法里用到了TAG但未定义,在MainActivity类中添加一个常量:

private static final String TAG = "MainActivity";

修正后的完整代码

package com.moltaexlips.todolist;

import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.util.Log;

public class MainActivity extends AppCompatActivity {
    private static final String TAG = "MainActivity";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.main_menu, menu);
        return super.onCreateOptionsMenu(menu);
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
            case R.id.action_add_task:
                Log.d(TAG, "Add a new task");
                return true;
            default:
                return super.onOptionsItemSelected(item);
        }
    }
}

这些都是新手常犯的小失误,修正后就能正常编译运行。

内容的提问来源于stack exchange,提问作者MoltaExlips

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 14:22:42