java启动线程的方法——实现Runnable接口

在前面的帖子中提到了继承Thread类的方法来启动线程,但是由于java是单继承的,我们有时需要使用更多类功能以及资源共享,那么实现接口就是个不错的选择,因为Java中我们可以实现多个接口。我们一般通过实现Runnable接口来创建线程。见下面的例子:
java启动线程的方法——实现Runnable接口
在上面的例子中,我们让TestThread2实现了Runnable接口,并实现了run()方法,与继承Thread类的方式不同的是我们创建了一个Thread类的对象来调用start()方法,因为只有Thread类中有start()方法,Thread对象也叫代理对象。通过阅读API(见下图)我们可以看出,Thread的构造方法中可以传一个Runnable对象,所以我们就把实现了Runnable接口的对象传进Thread构造方法中。
java启动线程的方法——实现Runnable接口
我们以后优先使用实现Runnable接口的方式来创建线程。