Tôi đang cố gắng tìm ra những lợi thế có thể của việc mở rộng lớp Thread là gì?Lợi thế chính của việc mở rộng lớp Thread (hoặc khi mở rộng Thread thay vì thực hiện runnable)
Đây là một phần của một câu hỏi khác mà tôi mô tả: Có hai cách tạo ra chủ đề trong Java
- kéo dài từ Chủ đề lớp
- thực hiện giao diện Runnable
Như expalined here có một số lợi ích của việc sử dụng giao diện runnable. Câu hỏi của tôi là lợi thế của việc mở rộng từ lớp Thread là gì? Ưu điểm duy nhất mà tôi nghĩ đến là có thể mở rộng từ lớp Thread và giả sử gọi nó là lớp ThreadExtended. Sau đó, anh ta/cô ấy có thể thêm nhiều chức năng hơn trong ThreadExtended (mà tôi không biết điều đó có thể là gì), và sau đó khi anh/cô ấy muốn tạo một chủ đề, thay vì mở rộng từ lớp Thread, nó mở rộng từ ThreadExtended.
Có lợi thế nào khi sử dụng lớp Thread thay vì giao diện Runnable không? Bạn có biết bất kỳ lớp nào mở rộng từ lớp Thread và sau đó yêu cầu người dùng mở rộng từ các lớp đó nếu họ muốn có khả năng đa luồng?
public class ThreadExtended extends Thread{
//override some functions || add more functionality to Thread class
}
public class MyThread extends ThreadExtended{
public void run()
{
for(int i=0;i<10;i++)
{
System.out.println("Using ThreadExtended instead of Thread directly");
}
}
public static void main(String args[])
{
MyThread myThread = new MyThread();
myThread.start();
}
}
Chỉ có một cách để tạo một chuỗi trong java và đó là để khởi tạo một 'Thread' và gọi' start() 'trên nó. –
@SotiriosDelimanolis Tôi hiểu rằng, tôi hỏi về việc mở rộng không instantiating – sheidaei
Hãy chú ý đến câu hỏi tôi đã hỏi, nó hơi khác với một trong những bạn nghĩ rằng nó là bản sao của. Cảm ơn – sheidaei