java-创建线程的两种方式

1. 继承Thread类

  • 定义类继承Thread类。
  • 覆盖run方法。
  • 实例化子类对象,调用start()方法,从而调用run方法。

2.实现Runnable接口

  • 定义类实现Runnable接口。
  • 覆盖接口中的run方法,将线程的任务代码封装到run方法中。
  • 通过Thread类创建线程对象,并将Runnable接口的子类对象作为Thread类的构造函数的参数。因为线程对象的任务封装在Runnable接口子类对象的run方法中,在线程创建时必须明确要运行的任务。
  • 调用线程对象的start()方法。

第二种方法更为常用:

  • 将子类任务分离出来,进行单独封装。
  • 避免了java单继承的局限性。
原文地址:https://www.cnblogs.com/hust-ghtao/p/4668867.html