21xrx.com
2024-12-23 13:56:32 Monday
登录
文章检索 我的文章 写文章
我在学习Java的时候
2023-06-11 09:10:56 深夜i     --     --

我在学习Java的时候,发现了Java线程的创建方式,它有三种:继承Thread类、实现Runnable接口和实现Callable接口。下面我将为大家介绍这三种方式以及示例代码。

1. 继承Thread类

继承Thread类是Java中最基本的创建线程的方式,只需要继承Thread类并重写run()方法即可。

示例代码:


public class MyThread extends Thread {

  @Override

  public void run()

    // 线程执行的代码

  

}

public class Main {

  public static void main(String[] args) {

    MyThread myThread = new MyThread();

    myThread.start();

  }

}

2. 实现Runnable接口

实现Runnable接口是Java中常用的线程创建方式之一,与继承Thread类相比,它的优点是可以避免单继承带来的局限性。

示例代码:


public class MyRunnable implements Runnable {

  @Override

  public void run()

    // 线程执行的代码

  

}

public class Main {

  public static void main(String[] args) {

    MyRunnable myRunnable = new MyRunnable();

    Thread thread = new Thread(myRunnable);

    thread.start();

  }

}

3. 实现Callable接口

实现Callable接口是Java中较为高级的线程创建方式,与实现Runnable接口相比,它可以返回线程执行的结果,并且可以抛出异常。

示例代码:


public class MyCallable implements Callable {

  @Override

  public String call() throws Exception

    // 线程执行的代码

    return "线程执行完毕";

  

}

public class Main {

  public static void main(String[] args) throws ExecutionException, InterruptedException {

    MyCallable myCallable = new MyCallable();

    FutureTask futureTask = new FutureTask<>(myCallable);

    Thread thread = new Thread(futureTask);

    thread.start();

    String result = futureTask.get();

    System.out.println(result);

  }

}

总结

通过继承Thread类、实现Runnable接口和实现Callable接口这三种方式,我们可以在Java中创建线程,并实现多线程编程。需要注意的是,在启动线程时必须调用start()方法,而不是直接调用run()方法。这三种方式各有优缺点,需要根据具体的场景选择合适的方式。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复