A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 肖瑞军 黑马帝   /  2011-11-9 23:53  /  2088 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 肖瑞军 于 2013-8-27 23:28 编辑

99999999999999

5 个回复

正序浏览
Runnable 接口应该由那些打算通过某一线程执行其实例的类来实现。类必须定义一个称为 run 的无参数方法。
设计该接口的目的是为希望在活动时执行代码的对象提供一个公共协议。所以要将Rannable接口的子类对象传递给Thread,Thread 类可以实现 Runnable接口的全部抽象方法。
另外,Runnable 为非 Thread 子类的类提供了一种激活方式。通过实例化某个 Thread 实例并将自身作为运行目标,就可以运行实现 Runnable 的类而无需创建 Thread 的子类。大多数情况下,如果只想重写 run() 方法,而不重写其他 Thread 方法,那么应使用 Runnable 接口。这很重要,因为除非程序员打算修改或增强类的基本行为,否则不应为该类创建子类。
回复 使用道具 举报
你想想如果是你自己设计这个线程你要怎么弄?
随便开个N个线程然后去执行某个程序?
这样会出问题的,所以要给进程指定它的工作
线程便有了个执行指定工作的能力start()

于是,设计的时候让线程只能执行指定的代码,这个代码总要放个地方吧,
那个Run()就是这么个地方,也就是个地方 可以叫Run() 可以是Do(),只是设计的时候选了这个RUn()
一个地方名而已,别太纠结

评分

参与人数 1技术分 +1 收起 理由
宁超 + 1 赞一个!

查看全部评分

回复 使用道具 举报
线程是用来完成我们的任务的。我们的任务放哪里呢?就放run方法里。任务代码就放在Rannable的run方法中。
我们让线程完成交代的任务,我们就让线程类包含任务代码。现实世界中我们用这样的语句,sun就设计出这样的结构。面向对象的思想多么的符合我们的现实世界。

评分

参与人数 1技术分 +1 收起 理由
宁超 + 1 赞一个!

查看全部评分

回复 使用道具 举报
刘浩 黑马帝 2011-11-10 00:27:43
藤椅
打错字了  我的错.......................起到------->启动

评分

参与人数 1技术分 +1 收起 理由
宁超 + 1 赞一个!

查看全部评分

回复 使用道具 举报
刘浩 黑马帝 2011-11-10 00:13:15
沙发
Thread调用   Rannable的run方法,是以便在这个线程中起到该任务..《thinking in java》是这样描述的.
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马