理论教育 Java程序设计实用教程:线程的创建技巧

Java程序设计实用教程:线程的创建技巧

时间:2023-11-21 理论教育 版权反馈
【摘要】:Thread类的常用方法如下:start():启动线程,使之从新建状态进入就绪排队状态。setPriority:设置线程优先级继承自Thread类创建线程实例。图9.4通过继承Thread类创建线程2.实现Runnable接口通过继承Thread类来创建线程有一个缺点,就是如果我们的类已经从一个类继承,就无法再继承Thread类。图9.5通过实现Runnable接口创建线程

Java程序设计实用教程:线程的创建技巧

在Java中创建线程有两种方法:使用Thread类和使用Runnable接口。在使用Runnable接口时需要建立一个Thread实例。因此,无论是通过Thread类还是Runnable接口建立线程,都必须建立Thread类或它的子类的实例。

1.继承自Thread类

Thread类位于java.lang包中,只有通过Thread类或它的派生类才能创建线程的实例,并启动一个新的线程。Thread类的构造方法如下所示:

(1)Thread():创建一个系统线程对象。

(2)Thread(Runnable target):参数对象target中实现run方法来初始化。

(3)Thread(String threadname):为新创建的线程对象指定名称。

线程优先级(1~10):

•MIN_PRIORITY:代表最小优先级,通常为1。

•NORM_PRIORITY:代表普通优先级,默认为5。

•MAX_PRIORITY:代表最高优先级,通常为10。

Thread类的常用方法如下:

(1)start():启动线程,使之从新建状态进入就绪排队状态。

(2)run():定义线程操作,用户程序需要定义run方法。

(3)sleep(int millsecond):使线程暂时休眠。

(4)setPriority(int newPrioriry):设置线程优先级(www.daowen.com)

【例9.1】 继承自Thread类创建线程实例。

上述程序的运行界面如图9.4所示。

图9.4 通过继承Thread类创建线程

2.实现Runnable接口

通过继承Thread类来创建线程有一个缺点,就是如果我们的类已经从一个类继承,就无法再继承Thread类。那么如何限制这个类必须包含这一方法呢?当然是使用接口,Java提供了接口java.lang.Runnable来支持这种方法。

Runnable接口只有一个方法run(),我们声明自己的类实现Runnable接口并提供这一方法,将线程代码写入其中,就完成了这一部分的任务。但是Runnable接口并没有任何对线程的支持,还必须创建Thread类的实例,这一点通过Thread类的构造函数public Thread(Runnable target)来实现。

【例9.2】 实现Runnable接口创建多线程。

上述程序的运行界面如图9.5所示。

图9.5 通过实现Runnable接口创建线程

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈