基本信息
文件名称:java多线程面试试题及答案.doc
文件大小:26.63 KB
总页数:6 页
更新时间:2025-03-15
总字数:约3.43千字
文档摘要

java多线程面试试题及答案

一、单项选择题(每题2分,共10题)

1.启动一个线程的方法是()

A.run()B.start()C.init()D.resume()

2.以下哪个类是线程安全的()

A.ArrayListB.HashMapC.StringBufferD.HashSet

3.线程在生命周期中要经历5种状态,新建状态、就绪状态、运行状态、阻塞状态和()

A.死亡状态B.休眠状态C.暂停状态D.恢复状态

4.当一个线程进入一个对象的synchronized方法后,其它线程的说法正确的是()

A.可访问该对象的其它synchronized方法

B.可访问该对象的非synchronized方法

C.不能访问该对象的任何方法

D.以上都不对

5.以下关键字用于线程同步的是()

A.finalB.staticC.synchronizedD.transient

6.线程的优先级范围是()

A.1-5B.0-9C.1-10D.0-10

7.以下哪个方法可以使当前线程暂停执行()

A.yield()B.wait()C.notify()D.notifyAll()

8.一个线程对象的具体操作是由run()方法定义,该方法定义在()

A.Thread类B.Runnable接口C.Object类D.以上都可以

9.以下哪种不是创建线程的方式()

A.继承Thread类B.实现Runnable接口

C.实现Callable接口D.实现Collection接口

10.以下哪个方法用于唤醒在此对象监视器上等待的单个线程()

A.wait()B.notify()C.notifyAll()D.sleep()

二、多项选择题(每题2分,共10题)

1.创建线程的方式有()

A.继承Thread类B.实现Runnable接口

C.实现Callable接口D.使用线程池

2.以下哪些方法属于Thread类()

A.start()B.run()C.sleep()D.wait()

3.线程同步的机制有()

A.synchronized关键字B.Lock接口

C.volatile关键字D.信号量

4.以下哪些是线程的状态()

A.NEWB.RUNNABLEC.BLOCKEDD.TERMINATED

5.以下哪些集合类是线程安全的()

A.VectorB.HashtableC.ConcurrentHashMapD.CopyOnWriteArrayList

6.以下哪些方法可以使线程进入阻塞状态()

A.sleep()B.wait()C.join()D.yield()

7.以下关于Thread和Runnable说法正确的是()

A.一个类继承Thread类就不能再继承其它类

B.实现Runnable接口的类还能继承其它类

C.两种方式创建线程本质上都是一样的

D.推荐使用实现Runnable接口方式创建线程

8.以下哪些属于线程池相关的类()

A.ExecutorServiceB.ThreadPoolExecutor

C.ScheduledExecutorServiceD.FutureTask

9.以下哪些方法可以用来控制线程的执行顺序()

A.join()B.wait()C.notify()D.yield()

10.以下哪些异常可能在多线程编程中出现()

A.InterruptedExceptionB.IllegalMonitorStateException

C.ExecutionExceptionD.TimeoutException

三、判断题(每题2分,共10题)

1.一个线程可以同时处于就绪状态和运行状态。()

2.synchronized关键字可以修饰方法和代码块。()

3.调用Thread的stop()方法可以安全地停止线程。()

4.所有的线程都有一个优先级,默认优先级是5。()

5.实现Runnable接口的类必须重写run()方法。()

6.线程池中的线程在任务执行完毕后会立即销毁。()

7