栗喵
2017-12-29 16:47
哪种更好一点呢?
如果都继承了Thread类的前提下,两种方式都可以创建一个线程对象,一般我们是使用第一种方式来创建线程对象(向上造型);PS:你的第二种方式是调用run方法,比不是让线程进入就绪状态(start());
补充:如果你的Actor类继承了Thread类
第一种是向上造型(父类Thread引用子类Actor的对象),这种情况下不能通过此对象访问子类内部的方法(除了重写的父类的方法外)、变量等内容;所以说如果你在Actor类内部还有run方法以外的其他东西,通过此对象是无法访问的;
第二种,非向上造型,可以访问父类Thread的所有非私有方法及本类Actor内的所有内容;
总结:两种方式不完全相同,访问权限不一致,如果你在Actor类内部只有run方法推荐使用方式一,如果你还需要访问其他方法及变量只能使用方式二;
推荐参考:http://blog.csdn.net/shf4715/article/details/46848083
深入浅出Java多线程
186088 学习 · 464 问题
相似问题