android - 安卓的一些@Override 方法如何理解?
天蓬老师
天蓬老师 2017-04-17 15:45:58
[Android讨论组]
  1. 描述你的问题
    每当重写这些方法的时候,有一个疑惑就是这里的return 后面super这一句要不要修改,有时候不是很确定,我想是不太理解这原理。

  1. 贴上相关代码

@Override
    public boolean onCreateOptionsMenu(Menu menu) {
        
        return super.onCreateOptionsMenu(menu);
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        return super.onOptionsItemSelected(item);
    }
  1. 贴上报错信息

  2. 贴上相关截图

  3. 已经尝试过哪些方法仍然没解决(附上相关链接)

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回复(3)
怪我咯

既然还是调用的父类的方法,那就没必要重写父类的方法 这些代码都可以删掉

ringa_lee

你需要知道父类方法会做什么(读文档), 然后才能决定要不要调用父类的方法

另外有些父类方法是必须调用的, 基本是lifecycle相关的比如onCreate

天蓬老师

@Override 注解 就是表示 重写父类的某个方法,如果你重写的方法里什么都没做,就可以把这个方法删除掉,有的时候你必须调用父类的方法 就会出现 super 这些关键字什么的 其实这都是java 的基础知识,和Android没有太大的关系

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        // 以下是我的方法实现内容
}

    

假设我要重写这个方法,super.onActivityResult(requestCode, resultCode, data); 这一句就是调用父类的这个方法,然后下边再写我的方法内容。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号