JAVA方法重写后为什么会执行一些功能,比如继承Thread类后,为什么就会自动执行run方法?

应该是Thread内部机制自动执行run()方法,但MyThreadextendsThread后,重写run()方法为什么也会自动执行?说白了,就是方法重写中,子类为什么... 应该是Thread内部机制自动执行run()方法,但MyThread extends Thread后,重写run()方法为什么也会自动执行?说白了,就是方法重写中,子类为什么会执行父类的功能? 展开
 我来答
最爱悲惨的孩子
2019-07-11
知道答主
回答量:16
采纳率:0%
帮助的人:1.4万
展开全部
如果你是实现Runnable接口然后new Thread类然后执行start()会调用Thread中的run(),但是你点开源码就知道了.
Thread中的run方法是先判断你传进来的类是否是null然后if里面就是你的run(),
你想了解线程具体的可以去看Thread的构造函数还有里面有一个核心方法init()方法。
如果是继承的话就是直接用你重写的run方法了,因为是继承关系所以继承类也继承了start()方法,简单说就是继承类可以看做是一个Thread.clone
24...7@qq.com
2011-07-26 · 超过17用户采纳过TA的回答
知道答主
回答量:56
采纳率:0%
帮助的人:40.5万
展开全部
子类继承了父类的 变量 和 方法
你重写了run()方法 会把父类的run()方法覆盖
他当然会执行你的run()方法.
追问
但是我用子类的对象调用子类的方法,跟父类有什么关系?
追答
子类继承父类,是先把父类的变量和方法完全复制一遍,然后是你写的变量方法。你用子类的对象调用子类的方法,但父类的构造函数在子类里也有,父类的变量分配完了,方法走一遍(在子类里复制的那个),才轮到你写的方法 什么的。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式