转:http://blog.csdn.net/wwww1988600/article/details/7309070
在java中可有两种方式实现多线程,一种是继承Thread类,一种是实现Runnable接口;Thread类是在java.lang包中定义的。一个类只要继承了Thread类同时覆写了本类中的run()方法就可以实现多线程操作了,但是一个类只能继承一个父类,这是此方法的局限。
两种实现方式的区别和联系:
在程序开发中只要是多线程肯定永远以实现Runnable接口为主,因为实现Runnable接口相比
继承Thread类有如下好处:
->避免点继承的局限,一个类可以继承多个接口。
->适合于资源的共享(这是错误的)
解释:在java 中,要想实现资源的共享,就要使用信号量机制,有两种方法:1,使用Semaphore 2,使用Synchronize具体例子就不搬了。