procedure(); }
___________ {
System.out.println(“捕获:”+e); } }
二、填空题
1. catch子句都带一个参数,该参数是某个异常的类及其变量名,catch用该参数去与_______对象的类
进行匹配。
2. java虚拟机能自动处理_______异常。
3. 变量属性是描述变量的作用域,按作用域分类,变量有局部变量、类变量、方法参数和_______ 4. 同一段程序可能产生不止一种异常。可以放置多个________子句,其中每一种异常类型都将被检查,
第一个与之匹配的就会被执行。
5. 捕获异常要求在程序的方法中预先声明,在调用方法时用try-catch-______语句捕获并处理。 6. java语言认为那些可预料和不可预料的出错称为_________
7. 按异常处理不同可以分为运行异常、捕获异常、声明异常和______几种。 8. 抛出异常的程序代码可以是________或者是JDK中的某个类,还可以是JVN. 9. 抛出异常、生成异常对象都可以通过_________语句实现。 10. 捕获异常的统一出口通过_________语句实现。
11. java语言的类库中提供了一个__________类,所有的异常都必须是它的实例或它子类的实例。 12. Throwable类有两个子类:__________类和Exception类。 13. 对程序语言而言,一般有编译错误和____________错误两类。
14. 下面程序定义了一个字符串数组,并打印输出,捕获数组超越界限异常。请在横线处填入适当的内容
完成程序。
public class HelloWorld {
int i=0;
String greetings[]= {
“Hello world!”, “No,I mean it!”, “HELLO WORLD!!” }; while(i<4) {
____________
}
System.out.println(greeting[i]); }
_________________(ArrayIndexOutOfBoundsException e) {
System.out.println(“Re-setting Index Value”); i=-1; finally
{
System.out.println(“This is always printed”); } i++; } } }
第六章 图形与用户界面技术
一、选择题
1. Window是宣示屏上独立的本机窗口,它独立于其它容器,Window的两种形式是()
A. Frame和Dialog B. Panel和Frame
C. Container和Component D. LayoutManager和Container
2. 框架(Frame)的缺省布局管理器就是()
A. 流程布局(Flow Layout) B. 卡布局(Card Layout) C. 边框布局(Border Layout) D. 网格布局(Grid Layout)
3. java.awt包提供了基本的java程序的GUI设计工具,包含控件、容器和()
A. 布局管理器 B. 数据传送器 C. 图形和图像工具 D. 用户界面构件
4. 所有Swing构件都实现了()接口
A. ActionListener B. Serializable C. Accessible D. MouseListener
5. 事件处理机制能够让图形界面响应用户的操作,主要包括()
A. 事件 B. 事件处理 C. 事件源 D. 以上都是
6. Swing采用的设计规范是()
A. 视图----模式----控制 B. 模式-----视图---控制 C. 控制-----模式----视图 D. 控制----视图-----模式
7. 抽象窗口工具包( )是java提供的建立图形用户界面GUI的开发包.
A. AWT B. Swing C. Java.io D. Java.lang
8. 关于使用Swing的基本规则,下列说法正确的是( )
A. Swing构件可直接添加到顶级容器中
B. 要尽量使用非Swing的重要级构件
C. Swing的Jbutton不能直接放到Frame上 D. 以上说法都对
9. 下列不属于java.event包中定义的事件适配器的是( )
A. 构件适配器 B. 焦点适配器 C. 键盘适配器 D. 标签适配器
10. ( )布局管理器使容器中各个构件呈网格布局,平均占据容器空间。
A. FlowLayout B. BorderLayout C. GridLayout D. CardLayout
二、填空题
1. 在需要自定义Swing构件的时候,首先要确定使用那种构件类作为所定制构件的______,一般继承
Jpanel类或更具体的Swing类.
2. Swing的事件处理机制包括_____、事件和事件处理者。
3. Java事件处理包括建立事件源、_______和将事件源注册到监听器。
4. Java的图形界面技术经历了两个发展阶段,分别通过提供AWT开发包和_______开发包来实现。 5. 抽象窗口工具包________提供用于所有Java applets及应用程序中的基本GUI 组件。 6. Window有两种形式:Frame( 框架)和_____.
7. 容器里的组件的位置和大小是由_____________决定的 。
8. 可以使用setLocation(),setSize()或____________中的任何一中方法设定组件的大小或位置。 9. 容器Java.awt.Container是_____________类的子类。 10. 框架的缺省布局管理器是_________.。
11. ______________包括五个明显的区域:东、南、西、北、中。
12. _____________布局管理器是容器中各个构件呈网格布局,平均占据容器空间 13. _____________组件提供了一个简单的“从列表中选取一个”类型的输入。 14. 在组件中显示时所使用的字体可以用____________方法来设置。 15. 为了保证平台独立性,Swing是用________编写。 16. Swing 采用了一种MVC的设计范试,即___________.
17. Swing GUI使用两种类型的类,即GUI类和__________支持类。
18. ________由一个玻璃面板、一个内容面板和一个可选择的菜单条组成。 19. 对Swing构件可以设置_______边框。
20. ___________对话框在被关闭前将阻塞包括框架在内的其他所有应用程序的输入 21. 读程序后写出结果 import java.awt.*; public class ExGui3 {
private Frame f; private Panel p;
private Button bw,bc;
public static void main(String args[])
{
ExGui3 gui=new ExGui3();
Gui.go; }
public void go() {
f=new Panel(“Exl”); bw=new Button(“西”);
bc=new Button(“空白区域”); f.add(bw,BorderLayout.CENTER); f.add(bc,BorderLayout.CENTER); p=new Panel();
bfile=new Button(“文件”);
bhelp=new Button(“帮助”); p.add(bfile); p.add(bhelp);
f.add(p,BorderLayout.NORTH); f.pack();
f.setVisible(false);
第七章 多线程
一、选择题
1. 线程调用了sleep()方法后,该线程将进入( )状态。
A. 可运行状态 B. 运行状态 C. 阻塞状态 D. 终止状态
2. 关于java线程,下面说法错误的是()
A. 线程是以CPU为主体的行为
B. java利用线程使整个系统成为异步
C. 创建线程的方法有两种:实现Runnable接口和继承Thread类 D. 新线程一旦被创建,它将自动开始运行
3. 在java中的线程模型包含()
A. 一个虚拟处理器 B. CPU执行的代码 C. 代码操作的数据 D. 以上都是
4.在java语言中,临界区可以是一个语句块,或者是一个方法,并用()关键字标识。
A. synchronized B. include C. import D. Thread
5. 线程控制方法中,yield()的作用是()
A. 返回当前线程的引用
B. 使比其低的优先级线程执行 C. 强行终止线程
D. 只让给同优先级线程运行
6. 线程同步中,对象的锁在()情况下持有线程返回
A. 当synchronized()语句块执行完后
B. 当在synchronized()语句块执行中出现例外(exception)时 C. 当持有锁的线程调用该对象的wait()方法时 D. 以上都是
7. 在以下()情况下,线程就进入可运行状态 A. 线程调用了sleep()方法时 B. 线程调用了join()方法时 C. 线程调用了yield()方法时 D. 以上都是
8. java用()机制实现了进程之间的异步执行 A. 监视器 B. 虚拟机 C. 多个CPU D. 异步调用
9. 下列程序实现简单的线程调度,请回答以下问题: 1 Thread myThread=new MyThreadClass();
myThread.start(); try {
myThread.sleep(10000); }
catch(InterruptedException e) { }
myThread.stop();
程序执行完第一行后,线程进入________状态; 程序执行完第二行后,线程进入________状态; 程序开始执行第五行时,线程进入________状态; 程序执行完第五行后,线程进入________状态; 程序执行完第十行后,线程进入________状态;
A. 新建状态 B. 可运行状态 C. 阻塞状态 D. 终止状态
10.Thread类的方法中,toString()方法的作用是()
A. 只返回线程的名称
B. 返回当前线程所属的线程组的名称 C. 返回当前线程对象 D. 返回线程的名称
二、填空题
1. ________是java程序的并发机制,它能同步共享数据、处理不同的事件。
线程是程序中的一个执行流,一个执行流是由CPU运行程序的代码、__________所形成的,因此,线程被认为是以CPU为主体的行为。
2. 线程的终止一般可以通过两种方法实现:自然撤销或者是__________. 3. 线程模型在java中是由__________类进行定义和描述的。
4. 线程的创建有两种方法:实现_________接口和继承Thread类。