正在加载,请稍候…

完整刷题、自动判分与错题本在主站体验 前往 爱课堂 →

Java语言程序设计 练习题

共 926 道题,以下仅展示题目与选项,供练习与学习使用。

想边做边批改、自动判分、收藏错题? 前往主站在线练习《Java语言程序设计》,获得完整学习体验。
前往 爱课堂 学习 →
判断题 1分
Java中所有的线程都有优先级,优先级高的线程一定比优先级低的线程先执行完毕。
  1. A正确
  2. B错误
判断题 1分
一个Thread对象只能调用一次start()方法,重复调用会抛出异常。
  1. A正确
  2. B错误
判断题 1分
实现Runnable接口的类可以直接实例化并调用start()方法来启动线程。
  1. A正确
  2. B错误
判断题 1分
守护线程(Daemon Thread)在所有用户线程结束后会自动随JVM一起退出。
  1. A正确
  2. B错误
判断题 1分
Thread.sleep()方法在休眠期间会释放已经持有的对象锁。
  1. A正确
  2. B错误
判断题 1分
继承Thread类和实现Runnable接口创建线程的效果完全相同,没有任何区别。
  1. A正确
  2. B错误
单选题 1分
Java中用于实现线程同步的关键字是( )。
  1. Asynchronized
  2. Bvolatile
  3. Cfinal
  4. Dstatic
单选题 1分
下列关于synchronized关键字的叙述中,正确的是( )。
  1. Asynchronized只能修饰方法
  2. Bsynchronized锁的是代码而不是对象
  3. Csynchronized是可重入锁
  4. Dsynchronized不能修饰静态方法
单选题 1分
在Java中,wait()、notify()和notifyAll()方法定义在( )类中。
  1. AThread类
  2. BObject类
  3. CRunnable接口
  4. DLock接口
单选题 1分
线程间通信中,notify()方法的作用是( )。
  1. A唤醒在该对象监视器上等待的单个线程
  2. B唤醒所有在该对象监视器上等待的线程
  3. C使当前线程进入等待状态
  4. D终止当前线程
单选题 1分
在synchronized方法或代码块中调用wait()方法后,线程会( )。
  1. A继续持有锁并进入等待状态
  2. B立即释放锁并终止运行
  3. C释放锁并进入可运行状态
  4. D释放锁并进入等待状态
单选题 1分
下列关于volatile关键字的说法中,正确的是( )。
  1. Avolatile能保证变量的原子性操作
  2. Bvolatile能保证变量的可见性
  3. Cvolatile可以替代synchronized的所有功能
  4. Dvolatile变量不能被多个线程同时访问
单选题 1分
下列哪种情况不会导致线程释放对象锁( )。
  1. A调用wait()方法
  2. Bsynchronized代码块执行完毕
  3. C调用sleep()方法
  4. D线程执行完synchronized方法
单选题 1分
在Java中,使用synchronized修饰实例方法时,该方法的锁对象是( )。
  1. Athis(当前对象实例)
  2. B方法的Class对象
  3. C方法的参数对象
  4. DThread.currentThread()
单选题 1分
在多线程环境下,对共享变量进行读写操作时,为了保证数据一致性,应使用( )。
  1. Asynchronized
  2. Bvolatile
  3. Ctransient
  4. Dnative
单选题 1分
下列关于死锁的叙述中,正确的是( )。
  1. A死锁发生后JVM会自动解除
  2. B死锁是多个线程互相等待对方释放锁的状态
  3. CJava中不可能发生死锁
  4. D增加线程数量可以避免死锁
单选题 1分
在Java线程同步中,notifyAll()方法的作用是( )。
  1. A唤醒所有处于运行状态的线程
  2. B唤醒所有在该对象监视器上等待的线程
  3. C唤醒当前线程
  4. D终止所有等待的线程
单选题 1分
下列关于synchronized代码块的叙述中,正确的是( )。
  1. Asynchronized代码块的锁对象只能是this
  2. Bsynchronized代码块不能嵌套使用
  3. Csynchronized代码块可以指定任意对象作为锁
  4. Dsynchronized代码块中发生异常时不会释放锁
单选题 1分
在经典的生产者-消费者问题中,当缓冲区已满时,生产者线程应该( )。
  1. A调用wait()进入等待状态
  2. B继续向缓冲区添加数据
  3. C调用notify()唤醒其他线程
  4. D调用sleep()休眠一段时间
单选题 1分
下列关于Java中线程安全集合类的说法中,正确的是( )。
  1. AArrayList是线程安全的
  2. BHashMap是线程安全的
  3. CHashSet是线程安全的
  4. DVector是线程安全的

本页仅提供题目与选项供学习参考,不含答案。如需系统练习、自动判分与错题本,欢迎前往主站《Java语言程序设计》在线练习