java习题7参考练习及答案,java习题及答案第7章 习题参考答案

第7章多线程编程

1.什么是线程?与进程有何不同?

答:线程是操作系统中重要概念之一,是程序运行的基本执行单元,与进程一样,也有创建、销毁和切换等状态,但负荷远小于进程,又称为轻量级进程。与进程不同的是:占用的资源少,不像进程那样可由几个线程组成,在Java语言中,用http://www.doczj.com/doc/49098e87302b3169a45177232f60ddccdb38e6e9.htmlng.Thread类创建和管理线程,而进程是由http://www.doczj.com/doc/49098e87302b3169a45177232f60ddccdb38e6e9.htmlng.Process类等类创建和管理。

2.使用多线程的优势何在?

答:使用多线程具有很多优势,这主要表现在如下五方面:充分利用CPU资源;简化编程模型;简化异步事件的处理;使GUI程序更有效率;节约成本。

3.主要的线程状态有哪些?它们之间是如何转换的?

答:线程主要有如下5个状态:New(新)、Runnable(可运行、就绪)、Running(运行)、Blocked(被阻塞、挂起)和Dead(死亡),它们之间转换如下图所示:

java习题7参考练习及答案,java习题及答案第7章 习题参考答案_第1张图片

4.简述创建线程的两种方法及各自的步骤。

答:第一种方法是通过继承Thread类编写用户自己的线程类,而后创建实例,步骤为:

?定义自己的线程类MyThread,并覆盖Thread类的run(),实现所需功能;

?实例化MyThread类,并用start()方法启动。

第二种方法是通过实现Runnable接口来创建线程,使用Runnable接口创建线程的步骤为:

?实现Runnable接口,如实现了该接口的类为MyRunnable,并在MyRunnable类的run()方法里编写想让线程执行的代码;

?创建实现了Runnable接口类的实例,如创建MyRunnable类的实例为myRunnable;

?创建线程类Thread的实例,并用构造方法Thread(Runnable)将myRunnable赋值给target。5.简述sleep()方法的作用,并修改例7.10中休眠部分,体会线程有无休眠的差异。

答:sleep()作为休眠方法,可让线程休眠一段时间,此期间线程不消耗CPU资源。传入参数是休眠的时间,单位为毫秒。

你可能感兴趣的