第八周课堂测试

1、下面代码中共有(C)个线程?

public class ThreadTest {
public static void main(String args[]){
MyThread myThread =new MyThread();
Thread t1=new Thread(myThread);
Thread t2=new Thread(myThread);
t1.start();
t2.start();
}
}
class MyThread extends Thread {
...
}

A .1

B .2

C .3

D .4

2、Java中,可以继承(B)类定义线程

A .Runnable

B .Thread

C .Future

D .Executor

3、以下(AB)方法会使线程进入阻塞状态?

A .Thread.sleep()

B .wait()

C .notify()

D .interrupt()

4、如果有以下代码段:

Thread thread = new Thread(new ________________() {
public void run() {...}
});

空白部分指定哪些类型可以通过编译?(AB)

A .Runnable

B .Thread

C .Future

D .Executor

5、调用线程的interrupt()方法 ,会抛出(CD)异常对象?

A .IllegalStateException

B .RuntimeException

C .InterruptedException

D .SecurityException

6、下列哪个叙述是错误的?(A)

A .线程新建后,不调用start方法也有机会获得CPU资源

B .如果两个线程需要调用同一个同步方法,那么一个线程调用该同步方法时,另一个线程必须等待。

C .目标对象中的run方法可能不启动多次

D .默认情况下,所有线程的优先级都是5级。

7、对于下列程序,哪个叙述是正确的?(A)

public class E {
public static void main(String args[]) {
Target target =new Target();
Thread thread =new Thread(target);
thread.start();
}
}
class Target implements Runnable{
public void run(){
System.out.println("ok");
}
}

A .JVM认为这个应用程序共有两个线程。

B .JVM认为这个应用程序只有一个主线程。

C .JVM认为这个应用程序只有一个thread线程。

D .thread的优先级是10级。

8、对于下列程序,哪个叙述是正确的?(B)

A .JVM认为这个应用程序共有两个线程。

B .JVM认为这个应用程序只有一个主线程。

C .JVM认为这个应用程序只有一个thread线程。

D .程序有编译错误,无法运行。

9、进程和程序的一个本质区别是(A)

A .前者为动态的,后者为静态的。

B .前者存储在内存,后者存储在外存。

C .前者在一个文件中,后者在多个文件中。

D .前者分时使用CPU,后者独占CPU。

10、进程的基本状态有:新建、运行、阻塞、死亡。(A)

A .true

B .false

11、下列说法正确的是(ABD)

A .Java语言的一大特性就是内置对多线程的支持。

B .main方法返回时,JVM就会结束Java应用程序。

C .Java应用程序中第一个线程结束后,JVM结束Java应用程序。

D .Java语言使用Thread类及其子类对象来表示线程。

12、下列关于线程状态与生命周期的说法,错误的是(BC)

A .在线程没有结束run()方法之前,不要让线程再调用start()方法,否则将发生IllegalThreadStateException异常。

B .run()方法负责通知JVM有新的线程等候切换。

C .执行sleep()结束后,该线程进入运行状态,得到CPU的使用权。

D .进入阻塞状态时,线程不能进入排队队列。

13、JVM的线程调度器的任务是使高优先级的线程能始终运行,一旦时间片有空闲,则使具有同等优先级的线程以轮流的方式顺序使用时间片。(A)

A .true

B .false

14、下列关于setPriority方法的说法,错误的是(C)

A .该方法更改线程的优先级。

B .该方法传入的参数为,要为线程设定的优先级。

C .该方法首先调用线程的 checkAccess 方法,且不带任何参数。这可能抛出IllegalArgumentException异常。

D .如果优先级不在MIN_PRIORITY到MAX_PRIORITY范围内,则抛出IllegalArgumentException异常。

15、当线程使用CPU资源的时间到时后,即使线程没有完成自己的全部操作,Java调度器也会中断当前线程的执行,把CPU的使用权切换给下一个排队等待的线程。(A)

A .true

B .false

16、下列关于守护线程的说法,正确的是(ABCD)

A .thread.setDaemon(true)必须在thread.start()之前设置,否则会报IllegalThreadStateException异常。

B .如果用户线程已经全部退出运行,只剩下守护线程存在,那么虚拟机也就退出了。

C .将线程转换为守护线程可以通过调用Thread对象的setDaemon(true)方法来实现。

D .守护线程应该永远不去访问固有资源,如文件、数据库,因为它会在任何时候甚至在一个操作的中间发生中断。

17、不可以在非同步方法中使用wait()、notify()、notifyAll()。(A)

A .true

B .false

18、下列关于线程常用的方法的叙述,错误的是(CD)

A .让run方法执行完毕,线程就变成死亡状态。

B .如果线程在休眠时被打断,JVM会抛出InterruptedException异常。

C .一个已运行的线程没有进入死亡状态时,如果再给线程分配实体,则先前的实体会被垃圾收集器收集掉。

D .当线程进入死亡状态后,线程就不能够调用isAlive()方法了。

19、线程在新建和死亡状态,调用isAlive()方法返回的值是false。(A)

A .true

B .false

20、以下代码中有两个线程:(B)

public class E {
public static void main(String args[]) {
Target target =new Target();
Thread thread =new Thread(target);
target.run();
for(int i= 0;i<=10;i++) {
System.out.println("yes");
try{ Thread.sleep(1000);
}
catch(InterruptedException exp){}
}
}
}
class Target implements Runnable{
public void run() {
for(int i= 0;i<=10;i++) {
System.out.println("ok");
try{
Thread.sleep(1000);
}
catch(InterruptedException exp){}
}
}
}

A .true

B .false

20145209刘一阳《JAVA程序设计》第八周课堂测试的更多相关文章

  1. 20145209刘一阳《JAVA程序设计》第九周课堂测试

    第九周课堂测试 1.域名解析服务器(ARP)负责将域名转化为IP地址,从而与主机连接.(B) A .true B .false 2.下列关于URL类的说法,正确的是(BD) A .URL 类自身可根据 ...

  2. 20145209刘一阳《JAVA程序设计》第二周课堂测试

    第二周课堂测试 1.if关键字后面的小括号内,表达式的值可以为10.(B) A .true B .false 2.表达式0xaa | 0x55的值为(C) A .FF B .0 C .255 D .1 ...

  3. 20145209刘一阳《JAVA程序设计》第一周课堂测试

    第一周课堂测试 1.下列不属于Java后继技术的是(D) A .Android B .JSP C .XML D .Python 2.下列关于Java语言特点的描述,正确的一组是(C) A .面向过程: ...

  4. Java程序设计 第16周 课堂实践 —— 数据库4

    Java程序设计 第16周 课堂实践 -- 数据库4 课堂实践任务4 查询world数据库,查询哪个国家的平均寿命最长. 代码分析 实现查询数据库需要我们修改Message.java,MessageD ...

  5. Java程序设计 第16周 课堂实践 —— 数据库3

    Java程序设计 第16周 课堂实践 -- 数据库3 课堂实践任务3 查询world数据库,获得New Jessey州所有城市的总人口数. 代码分析 实现查询数据库需要我们修改MessageDAO.j ...

  6. Java程序设计 第16周 课堂实践

    Java程序设计 第16周 课堂实践 -- 数据库2 课堂实践任务2 查询world数据库,获得人口超过500万的所有城市的列表. 代码分析 实现查询数据库需要我们修改Message.java,Mes ...

  7. 20145209刘一阳《JAVA程序设计》第四周课堂测试

    第四周课堂测试 1.下列说法正确的是(ACD) A .使用extends关键字定义一个类的子类. B .Java与C++类似,支持多继承,即子类可以有一个或多个父类. C .Object是所有类的祖先 ...

  8. 201521123027 <java程序设计>第八周学习总结

    1.本周学习总结 1.1思维导图 2.书面作业 Q1.List中指定元素的删除(题目4-1) 1.1 实验总结 总结:判断List中是否存在指定元素,需要用到equals方法,若存在就用remove进 ...

  9. 20145209刘一阳《JAVA程序设计》课堂测试总结

    20145209刘一阳<JAVA程序设计>课堂测试总结 这次重新学习JAVA这门课,我对本学期没有参与的测试进行了总结并制作成二维码方便老师检查,详细内容如下: 第一周课堂测试### ht ...

随机推荐

  1. 单独配置 Ehcache

    package com.shy.ehcache; import net.sf.ehcache.Cache; import net.sf.ehcache.CacheManager; import net ...

  2. MySQL上机实习报告(一)

    一.实习内容    利用wamp进行MySQL上机实习,建立数据库和一个学生信息表,并能对建的表进行数据插入.修改.查询和删除等内容. 二.实习目的 能将课堂上所学的内容运用到实际的上机操作中,进一步 ...

  3. Docker 报错 error during connect: Get pipe/docker_engine: The system cannot find the file specified. - 摘要: 本文讲的是Docker 报错 error during connect: Get pipe/dock

    error during connect: Get http://%2F%2F.%2Fpipe%2Fdocker_engine/v1.37/version: open //./pipe/docker_ ...

  4. Linux 系统常见命令功能大全_【all】

    Linux常见快捷键(6个) ctrl + u:剪贴光标前面 ctrl + k:剪贴光标后面 ctrl + y:粘贴 ctrl + r:查找命令 ctrl + insert:复制 shift+ ins ...

  5. Linux zip命令详解

    zip常见命令参数 Usage: zip [-options] [-b path] [-t mmddyyyy] [-n suffixes] [zipfile list] [-xi list] The ...

  6. asp.net core中DockerFile文件中的COPY

    今天在ubuntu系统中使用docker部署asp.net core时遇到了一个问题,docker build 的时候总会在最后一步提示 lstat obj/Docker/publish: no su ...

  7. 一、CSS概述 二、CSS的选择器(认识) 三、CSS样式和属性(练习) 四、重构商城首页DIV+CSS(页面布局)(重点) 浮动/更改显示方式

    一.CSS概述###<1>概念 DIV,就是一个HTML元素,块级元素,通常结合CSS进行页面的布局. CSS,层叠样式表,给HTML元素增强显示. ###<2>作用 样式定义 ...

  8. [EffectiveC++]item28:避免返回handles指向对象内部成分

    可以先参考一个帖子:http://bbs.csdn.net/topics/390731394?page=1

  9. python第二十一课——str中的常用函数(重要)

    演示str中常用的一些函数: 1.join():将容器对象以某种特定的格式(字符串)进行拼接组合,最后以字符串的形式返回 lt=['i','love','you','very','much'] str ...

  10. tomcat服务器宕机解决方案

    报错信息: java.lang.Object.wait(Native Method) java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:1 ...