Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Java

Sự khác biệt giữa Thread Class và Runnable Interface trong Java

Trong bài viết này, chúng ta sẽ tìm hiểu sự khác biệt giữa Thread Class và Runnable Interface.

Thread (Class)

  • Là một class
  • Dùng để tạo thread
  • Nhiều method: start(), run(), ...
  • Tốn nhiều bộ nhớ hơn
  • Vì Java không hỗ trợ đa kế thừa → class extends Thread thì KHÔNG extends class khác được
  • Mỗi thread tạo object riêng và gắn với nó

Runnable (Functional Interface)

  • Là functional interface
  • Dùng để tạo thread
  • Chỉ có 1 abstract method: run()
  • Tốn ít bộ nhớ hơn
  • Class implements Runnable vẫn có thể extends class khác
  • Nhiều thread có thể chia sẻ cùng một object