继承java.lang.Thread类--Thread类代表线程类
它的常用方法如下:
static Thread currentThread():返回当前正在运行的线程对象的引用。
static void yield():暂停当前正在运行的线程对象,并运行其他线程。
static void sleep(long millis) throws InterruptedException:在指定的毫秒数内让当前正在运行的线程休眠(暂停执行),此操作受到系统计时器和调度程序精度和准确性的影响。该线程不执行释放对象锁的操作。millis表示以毫秒为单位的休眠时间。
void start():使该线程开始运行,Java 虚拟机调用该线程的 run ()方法,该线程与其他线程并发执行。
void run():如果该线程是使用实现Runnable 接口的对象构造的,则调用该 Runnable对象的run()方法;否则,该方法不执行任何操作并返回。Thread的子类应该重写该方法。
void interrupt():设置线程的中断标记位,请求线程停止运行。
final void setPriority(int newPriority):更改线程的优先级。
final int getPriority():返回线程的优先级。
final void setName(String name):改变线程名称,使之与参数name相同。
final String getName():返回该线程的名称。
final void join()throws InterruptedException:等待该线程终止。
final void setDaemon(boolean on):将该线程标记为守护线程或用户线程。当正在运行的线程都是守护线程时,Java虚拟机退出。该方法必须在启动线程前调用。
long getId():返回该线程的标识符。线程 ID 是一个正的长整型数,在创建该线程时生成。线程ID是唯一的,在线程终止之前一直保持不变。线程终止后,该线程 ID 可以被重新使用。
用户的线程类只需要继承Thread类,并重写Thread类的run()方法即可。通过调用用户线程类的start()方法即可启动该线程。
另一种创建线程的方式是实现java.lang.Runnable接口,它只有一个run()方法。当使用Thread(Runnable thread)方式创建线程对象时,需为该方法传递一个实现了Runnable接口的对象,这样创建的线程将调用实现Runnable接口的对象的run()方法。