Java 中Thread 和Runnable的區別

yilip發表於2014-12-24

     轉:http://blog.csdn.net/wwww1988600/article/details/7309070

    在java中可有兩種方式實現多執行緒,一種是繼承Thread類,一種是實現Runnable介面;Thread類是在java.lang包中定義的。一個類只要繼承了Thread類同時覆寫了本類中的run()方法就可以實現多執行緒操作了,但是一個類只能繼承一個父類,這是此方法的侷限。

    兩種實現方式的區別和聯絡:

      在程式開發中只要是多執行緒肯定永遠以實現Runnable介面為主,因為實現Runnable介面相比

  繼承Thread類有如下好處:

  ->避免點繼承的侷限,一個類可以繼承多個介面。

  ->適合於資源的共享(這是錯誤的

   解釋:在java 中,要想實現資源的共享,就要使用訊號量機制,有兩種方法:1,使用Semaphore 2,使用Synchronize

   具體例子就不搬了。

相關文章