容器,流,多线程

上传人:第*** 文档编号:34065326 上传时间:2018-02-20 格式:DOC 页数:6 大小:56.50KB
返回 下载 相关 举报
容器,流,多线程_第1页
第1页 / 共6页
容器,流,多线程_第2页
第2页 / 共6页
容器,流,多线程_第3页
第3页 / 共6页
容器,流,多线程_第4页
第4页 / 共6页
容器,流,多线程_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《容器,流,多线程》由会员分享,可在线阅读,更多相关《容器,流,多线程(6页珍藏版)》请在金锄头文库上搜索。

1、姓名_学号_Java 容器,流,线程章节测试(本试卷满分 100 分,考试时间 120 分钟,答题前请将姓名和学号填写在试卷的左上角,并认真审题)一、 单选题(每题 2 分,共 40 分)1java 语言提供处理不同类型流的类的包是A. java.sql B. java.util C. java.math D. java.io2. 下列说法中错误的一项是A. 线程就是程序 B.线程是一个程序的单个执行流 C.多线程是指一个程序的多个执行流 D.多线程用于实现并发3下列界面元素中,不是容器的是 A.List B.Frame C.Dialog D.Panel4ByteArrayOutputStre

2、am 将下列哪一项作为输出流 A. 字符 B.字节 C.字节数组 D.对象5下列哪个方法可以使线程从运行状态进入其他阻塞状态A. sleep B.wait C.yield D.start6方法 resume( )负责重新开始哪个线程的执行?( )A. 被 stop( )方法停止的线程 B. 被 sleep( )方法停止的线程 C. 被 wait( )方法停止 D. 被 suspend( )方法停止 7下列关于容器的描述中,错误的是 A容器是由若干个组建和容器组成的 B容器是对图形界面中界面元素的一种管理 C容器是一种对指定宽和高的矩形范围 D容器都是可以独立的窗口8属于 Java 输入输出流的

3、、且处理的是 char 类型的类是( ) 。姓名_学号_A.Reader 类 B.InputStream 类C.OutputStream 类 D.File 类9线程通过( )方法可以休眠一段时间,然后恢复运行。A. run() B. setPrority()C. yield() D. sleep() 10Thread 类中能运行线程体的方法是( )A)start() B)resume() C)init() D)run()11列那种 java 组件为容器组件( )A. List 列表框 B. Choice 下拉式列表框 C. Panel 面板 D. MenuItem 命令式菜单项12设有四个线程

4、,它们的优先级分别为如下四种之一。则那种级别的线程优先执行?( )A. Thread.MIN_PRIORITY B. Thread.MAX_PRIORITYC. Thread.NORM_PRIORITY D. 优先级别码为 7 级13下面的哪一个关键字通常用来对对象的加锁,从而使得对对象的访问是排他的 A. sirialize B transient C synchronized D static14若要创建一个新的含有父目录的目录,应该使用下列哪一个类的实例 A.RandomAccessFile B.FileOutputStream C.File D.以上都对15请看下面未完成的代码publ

5、ic class Foo implements Runnable public void run (Thread t) System.out.println(Running.); public static void main (String args) new Thread(new Foo().start(); 结果是?( )A. 运行时抛出一个异常 B. 程序能够运行,但是没有任何输出 C. 没有实现 Runnable 接口中的方法导致编译错误 D. 程序运行后输出“Running”16所有事件类的父类是AActionEvent BAwtEvent CKeyEvent DMouseEven

6、t17线程生命周期中正确的状态是 ( )A)新建状态、运行状态和终止状态姓名_学号_B)新建状态、运行状态、阻塞状态和终止状态C)新建状态、可运行状态、运行状态、阻塞状态和终止状态D)新建状态、可运行状态、运行状态、恢复状态和终止状态18下面答案中 a,b 结果正确的是:( )StringBuffer stringBuffer1 = new StringBuffer(“abc”);StringBuffer stringBuffer2 = new StringBuffer(“abc”);boolean a = ( stringBuffer1.equals(stringBuffer2);Strin

7、g empA = new String (“abc”);String empB = new String (“abc”);boolean b = (empA = empB);A)true false B)true true C)false false D)flase true19下列选项中,哪一个属于输出流 A.从打印机流向控制器的数据流 B.从键盘流向内存的数据流 C.从内存流向控制器的数据流 D.从内存流向网络的数据流20下列说法中错误的一项是(D) A. 一个线程是一个 Thread 类的实例 B. 线程从传递给纯种的 Runnable 实例 run()方法开始执行 C. 线程操作的数据

8、来自 Runnable 实例 D. 新建的线程调用 start()方法就能立即进入运行状态二、填空题(共 10 题,每空 2 分,共 30 分)1如果要在程序中使用键盘输入语句,则需要预先导入_java.io_包。2在 Java 程序中,run()方法的实现有两种方式: 实现 _Runnable 接口_ 和 继承_Thread_类 3所有 GUI 标准组件类的父类是_Component_类4多线程程序设计的含义是可以将一个程序任务分成几个并行的 _任务_ 5Java 的 I/O 流包括字节流、_字符流_、_文件流_、对象流和管道流6线程的优先级是在 Thread 类的常数 MIN_PRIORI

9、TY 和 _MAX_PRIORITY_ 之间的一个值7滚动条有两类:_水平滚动条_和_垂直滚动条_。8.程序中可能出现一种情况:多个线种互相等待对方持有的锁,而在得到对方的锁之前都不会 8 释放自己的锁,这就是 _死锁_9输入输出在计算机中有两个主要作用: _采集数据_ 和 _提供数据处理结果_ 。10文件对话框(_FileDialog_)是对话框(_Dialog_)的子类,它是一种打开文件和保留文件的对话框窗口。姓名_学号_三、编程题(每题 10 分,共 30 分)1. 使用 Java Applet 编写满足下列要求的程序: (1)含有两个按钮和两个标签; (2)含有文本框和文本区; (3)

10、含有一个按钮具有退出功能; 关键代码: import java.awt.*;import java.awt.event.*; class pro5_1 extends WindowAdapter implication ActionListener Frame f;Label la1,la2;Button b1,b2;TextField tf;int tag=0;public static void main(String args) pro5_1 mywin=new pro5_1();mywin.display();public void display() f=new Frame(我的现实

11、窗口);la1=new Label(标签 1);la2=new Label(标签 2);f.add(la1,North);f.add(la2,West);b1=new Button(现实字符串);b2=new Button(退出);b1.addActionListener(this);f.add(b1,South);b2.addActionListener(this);f.add(b2,East);tf=new TextField();f.add(tf,Center);f.addWindowListener(this);f.setSize(400,200);f.setVisible(true)

12、; public void actionPerformed(ActionEvent e) String s1=这是一个字符串;String s2=这是另一个字符串;if(e.getActionCommand().equals(退出)System.exit(0);if(tag=0) tf.setText(s1);姓名_学号_tag=1; else tf.setText(s2);tag=0; public void windowClosing(WindowEvent e) System.exit(0);2.编写一个程序,把当前目录下 test.txt 文件的内容复制到文件 testbk.txt 中

13、(testbk.txt 文件不存在) 。关键代码:File f = new file(“test.txt”);File f2 = new file(testbk.txt);If(!f2.exists)F2.createNewFile();FileInputStream fis = new FileInpuStream(fis);inputStreamReader isr = new inputStreamReader(fis);isr.read();FileOutputSream fos = new FileOutputSream(f2);outputStreamWriter osw = ne

14、w outputStreamWriter(fos);osw.write();osw.close();fos.close();isr. close();fis.close();四、问答题(每题 5 分,共 10 分)1. 线程有哪几个基本状态?它们之间如何转化?简述线程的生命周期。答:新建状态,可运行状态,运行状态,阻碍状态,终止状态。对线程调用各种控制方法,就使线程从一种状态转换到另一种状态。线程的生命周期从新建开始,在可运行、运行和其他阻碍中循环,在可运行、运行、对象锁阻塞、等待阻塞中循环,最终在运行后run()方法结束后终止。2.试简述 Thread 类的子类或实现 Runnable 接口两种方法的异同? 答:采用继承 Thread 类方法使程序代码简单,并可以在 run()方法中直接调用线程的其他方法。而实现 Runnable 接口更符合面向对象设计的思想,因为从 OO 设计的角度,thread 类是虚拟 CPU 的封装,所以 Thread 的子类应该是关于 CPU 行为的类。但在继承Thread 类之类构造线程的方法中,Thread 类的子类大都是与 CPU 不相关的类。而实现Runnable 接口的方法,将不影响 Java 类的体系,所以更加符合面向对象的设计思想。同时,实现了 Runnable 接口的类可以用 extends 继承其他的类姓名_学号_

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号