为了账号安全,请及时绑定邮箱和手机立即绑定

线程和runnable实例区别

ArmyRunnable armyTaskOfSuiDynasty = new ArmyRunnable();

ArmyRunnable armyTaskOfRevolt = new ArmyRunnable();

为啥要实例化两次? 不能实例化一次,然后启动两个线程?

Thread  armyOfSuiDynasty = new Thread(armyTask,"隋军");

Thread  armyOfRevolt = new Thread(armyTask,"农民起义军");

正在回答

3 回答

因为创建线程只有两种方法:其一是实例化Thread类或者子类,其二是实现Runnable接口;

为什么要实例化两次呢?因为实现Runnable接口之后,还要调用包含“实现Runnable接口”的Thread类的构造方法,才会创建一个线程;

0 回复 有任何疑惑可以回复我~
#1

359031282 提问者

非常感谢!
2017-09-20 回复 有任何疑惑可以回复我~

第一次实例化 创建的是ArmyRunnable下的对象,第二次实例化创建的才是Thread对象,也可以这样写:
Thread  armyOfSuiDynasty = new Thread(new ArmyRunnable(),"隋军");

代表这是ArmyRunnable对象的一个线程

1 回复 有任何疑惑可以回复我~

实例化一次只能创建一个对象啊,现在需要两个对象,隋军和农民军,所以两次,因为军队战斗方法一样的,所以不需要单独在写一个线程

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

线程和runnable实例区别

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号