java 创建线程的疑惑,我看了Runnable的源码,里面只有一个抽象方法

publicinterfaceRunnable{publicabstractvoidrun();}一个类继承Thread或者实现Runnable接口,就可以创建一个线程,... public
interface Runnable {
public abstract void run();
}
一个类继承Thread或者实现Runnable接口,就可以创建一个线程,这我是知道,我想问,如果我自己随便写一个接口,里面的内容跟Runnable一样,另一个类去实现,为什么这样不能创建一个线程?有谁能详细解释一下?
展开
 我来答
张川1990
2014-01-01 · TA获得超过362个赞
知道小有建树答主
回答量:158
采纳率:0%
帮助的人:152万
展开全部
MyRunnable runnable = new MyRunnable ("A线程");//MyRunnable实现Runnable接口
Thread demo= new Thread(runnable);//要转换成Thread对象
demo.start();

下边是Thread的一个构造方法,也就是上边第二行用到的那个构造方法,
他接收的类型是java.lang.Runnable类型,所以你自定义的是不行的 虽然真正的
runnable那个类很简单
public Thread(Runnable target) {
init(null, target, "Thread-" + nextThreadNum(), 0);
}
476723610
2014-01-01 · 超过19用户采纳过TA的回答
知道答主
回答量:101
采纳率:100%
帮助的人:53万
展开全部
这说明你没有了解什么是接口,接口就是制定了统一的标准,Runnable制定了一个标准,你自己制定了一个标准,但是在Thread中只认Runnable的标准,你的标准就得放入你自己写的线程中用了,不能放入和Thread有关系的任何类中,明白了么?通俗一点就是说有得手机只能使用原装电池,非原装的它不认,就不能使用。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2019-09-06
展开全部
Runnable就不是线程,就是一个普通的接口
Thread才是线程,Thread只是支持Runnable接口的实现类,你的task实现都在run方法里,线程直接调用run方法而已;这就实现了任务和线程解耦;你自己写的当然不行了,你怎么提交给Thread
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
302652034_bai
2014-01-01 · TA获得超过4145个赞
知道大有可为答主
回答量:2206
采纳率:66%
帮助的人:1553万
展开全部
你需要的查看的不是Runable接口的源代码,而是Thread类的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式