javs中Thread类 Runnable 类 run方法 start方法
这两个类 两个方法之间的联系是如何的
Thread 类和 runnable类中都是需要重写run方法, 然后都是通过start()方法来启动线程的。
Thread可以将runnable接口作为参数接收,然后在启动,例如
new Thread(new runnable(){
run(){}
})
在实际开发中一个多线程的操作很少使用Thread类,而是通过Runnable接口完成,这样可以实现资源共享。但是在使用Runnable定义的子类中没有start()方法,只有Thread类中才有,此时观察Thread类,有一个构造方法:public Thread(Runnable target)
此构造方法接受Runnable的子类实例,也就是说可以通过Thread类来启动Runnable实现的多线程(start()可以协调系统的资源)。
Thread的有点:避免点继承的局限,一个类可以继承多个接口。
Runnable的有点:适合于资源的共享