- 2
- 0
- 约6.74千字
- 约 9页
- 2026-06-08 发布于河北
- 举报
Java并发编程笔试面试试题(含详细答案)
一、单项选择题(10题)
1.下列关于Java线程生命周期的状态,说法错误的是()
A.NEW:线程创建未启动
B.RUNNABLE:线程正在运行或等待CPU调度
C.BLOCKED:线程等待CPU时间片
D.TERMINATED:线程执行完毕
答案:C
2.以下方法中,不会释放锁的是()
A.wait()
B.sleep()
C.join()
D.notify()
答案:B
解析:sleep()是线程休眠,仅暂停执行,不释放持有的锁;wait()会释放锁并进入等待队列;join()底层依赖wait(),会释放锁;notify()仅唤醒等待线程,不主动释放锁,但对比选项,sleep()是最典型不释放锁的方法。
3.synchronized关键字底层依赖的锁机制是()
A.可重入乐观锁
B.不可重入悲观锁
C.可重入悲观锁
D.可重入读写锁
答案:C
解析:synchronized是可重入、悲观锁。同一线程可多次获取同一把锁(可重入),执行前直接加锁阻塞其他线程,不做乐观校验,属于悲观锁。
4.ReentrantLock和synchronized相比,核心优势不包括()
A.可实现公平锁
B.可超时获取锁
C.自动释放锁
D.可中断抢锁
答案:C
解析:synchronized是JVM自动加锁、自动
原创力文档

文档评论(0)