跳到主要内容

简述 Thread 可以被继承吗?

参考答案:

Thread 类在 Java 中是可以被继承的。Java 中的 Thread 类是一个用于创建和控制线程的类,它实现了 Runnable 接口。当你需要创建一个新的线程时,可以通过两种方式来实现:

  1. 继承 Thread 类:你可以创建一个新的类,继承自 Thread 类,并重写其 run() 方法。然后,你可以创建这个新类的实例,并调用其 start() 方法来启动一个新的线程。
public class MyThread extends Thread {
    @Override
    public void run() {
        // 线程执行的代码
    }
}

然后你可以这样创建并启动线程:

MyThread thread = new MyThread();
thread.start();
  1. 实现 Runnable 接口:另一种创建线程的方式是实现 Runnable 接口,并重写其 run() 方法。然后,你可以将这个 Runnable 实例传递给 Thread 类的构造函数,创建一个 Thread 对象,并调用其 start() 方法来启动线程。
public class MyRunnable implements Runnable {
    @Override
    public void run() {
        // 线程执行的代码
    }
}

然后你可以这样创建并启动线程:

Thread thread = new Thread(new MyRunnable());
thread.start();

虽然 Thread 类可以被继承,但在实际开发中,更推荐使用实现 Runnable 接口的方式来创建线程。这是因为 Java 不支持多重继承,如果一个类已经继承了其他类,那么它就不能再继承 Thread 类。而实现 Runnable 接口则没有这个问题,因为 Java 允许一个类实现多个接口。此外,使用 Runnable 接口还有助于实现线程之间的共享资源,因为可以创建多个线程实例共享同一个 Runnable 对象。