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

new一个Actor类的对象赋给Thread类型的引用和赋给Actor类型的引用,效果是一样的

http://img1.sycdn.imooc.com//5a4600ef00013c6f07140412.jpg

哪种更好一点呢?

正在回答

2 回答

如果都继承了Thread类的前提下,两种方式都可以创建一个线程对象,一般我们是使用第一种方式来创建线程对象(向上造型);PS:你的第二种方式是调用run方法,比不是让线程进入就绪状态(start());

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

栗喵 提问者

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

补充:如果你的Actor类继承了Thread类

  1. 第一种是向上造型(父类Thread引用子类Actor的对象),这种情况下不能通过此对象访问子类内部的方法(除了重写的父类的方法外)、变量等内容;所以说如果你在Actor类内部还有run方法以外的其他东西,通过此对象是无法访问的;

  2. 第二种,非向上造型,可以访问父类Thread的所有非私有方法及本类Actor内的所有内容;

    总结:两种方式不完全相同,访问权限不一致,如果你在Actor类内部只有run方法推荐使用方式一,如果你还需要访问其他方法及变量只能使用方式二;

    推荐参考:http://blog.csdn.net/shf4715/article/details/46848083

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

举报

0/150
提交
取消

new一个Actor类的对象赋给Thread类型的引用和赋给Actor类型的引用,效果是一样的

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信