Java语言程序设计第1-6章 课后习题答案

(b1,\ (this);

(b2,\

tf=new TextField(); (tf,\ (this); (400,200); (true); }

public void actionPerformed(ActionEvent e) {

String s1=\这是一个字符串\ String s2=\这是另一个字符串\ if().equals(\退出\ (0); if(tag==0) {

(s1); tag=1; } else {

(s2); tag=0; } }

public void windowClosing(WindowEvent e) {

(0); } }

运行该程序后,输出结果如图5-10所示。

2-6 使用Java Application编写满足下列要求的程序。 3 使用GridLayout布局。

4 设计一个简单的计算器。包括数字按钮0~9,以及加、减、乘、除、清零、等于运算按

钮和一个现实计算结果的文本区。

请读者参照本书本章程序距离中的例的程序内容进行编写。

2-7 编写一个图形用户界面的Application程序。 5 有一个菜单条;

6 菜单条中有3个菜单;

7 每个菜单有2个菜单项,其中一个菜单项又具有2个菜单子项。 程序内容如下: import .*;

import class pro5_3 extends Frame implements ActionListener,ItemListener {

TextField text; public pro5_3() {

super(\一个联系菜单的窗口\ setSize(300,200); }

public void init() {

MenuBar myB=new MenuBar(); setMenuBar(myB);

Menu m1=new Menu(\文件\ (new MenuItem(\保存\ ();

(\退出\ (this); (m1);

Menu m2=new Menu(\编辑\ (\复制\ ();

(\全选\ (this); (m2);

Menu m3=new Menu(\插入\ (\页码\ ();

Menu m31=new Menu(\图片\ (\来自剪贴画\ (\来自图形文件\ (m31); (this); (m3);

text=new TextField(); add(\ }

public static void main(String args[]) {

pro5_3 myMenu=new pro5_3(); (); (true); }

public void itemStateCharged(ItemEvent e) {

(\状态改变\ }

public void actionPerformed(ActionEvent e) {

());

if()==\退出\ (0); } }

运行该程序后,输出结果如图5-11所示。

5-4 编写一个可以弹出对话框的程序。

请读者参考本书本章程序举例中的例的程序内容进行编程。

第6章 异常和异常处理

选择题

6-1.下列关于异常的描述中,错误的是(B) A.异常是一种经过修正后程序仍可执行的错误

B.异常是一种程序在运行中出现的不可恢复执行的错误 C.不仅Java语言有异常处理,C++语言也有异常处理

D.出现异常不是简单结束程序,而是执行某种处理异常的代码,设法恢复程序的执行 6-2.下列关于异常处理的描述中,错误的是(D) A.程序运行时异常由Java虚拟机自动进行处理 B.使用try-catch-finally语句捕获异常 C.使用throw语句抛出异常

D.捕获到的异常只能用当前方法中处理,不能用其他方法中处理 6-3.下列关于try-catch-finally语句的描述中,错误的是(A) A.try语句后面的程序段将给出处理异常的语句

B.catch()方法跟在try语句后面,它可以是一个或多个 C.catch()方法有一个参数,该参数是某种异常类的对象

D.finally语句后面的程序段总是被执行的,该语句起到提供统一接口的作用 6-4.下列关于抛出异常的描述中,错误的是(D)

A.捕捉到发生的异常可在当前方法中处理,也可以抛到调用该方法的方法中处理 B.在说明要抛出异常的方法时应加关键字throw<异常列表> C.<异常列表>中可以有多个用逗号分隔的异常

D.抛出异常的方法中要使用下述抛出异常语句:throw<异常名>;其中,<异常名>是异常

类的类名

6-5.下列关于用户创建自己的异常描述中,错误的是(D) A.创建自己的异常应先创建一个异常类

B.为实现抛出异常,须在可能抛出异常的方法中书写throw语句 C.捕捉异常的方法是使用try-catch-finally语句格式 D.使用异常处理不会使整个系统更加安全和稳定 判断题

6-1.异常是一种特殊的运行错误的对象。(对) 6-2.异常处理可以使整个系统更加安全和稳定。(对) 6-3.异常处理是在编译时进行的。(错) 语言中异常类都是的子类。(对)

类有两个子类:Error类和Exception类。前者由系统保留,后者供应用程序使用。(对) 6-6.异常通常是指Error类和Exception类。(错) 类只有一个子类为RuntimeException。(错)

6-8.在异常处理中,出现异常和抛出异常是一回事。(错) 6-9.运行时异常是在运行时系统检测并处理的。(错) 6-10.使用try-catch-finally语句只能捕获一个异常。(错)

6-11.捕获异常时try语句后面通常跟有一个或多个catch()方法用来处理try块内生成

的异常事件。(对)

6-12.使用finally语句的程序代码为该程序提供一个统一的的出口。(对)

6-13.抛出异常的方法说明中要加关键字throws,并在该方法中还应添加throw语句。(对) 6-14.创建异常类时要给出该异常类的父类。(对) 6-15.如果异常类没有被捕获将会产生不正常的终止。(对) 分析程序的输出结果题 class Exer6_1 {

public static void main(String args[] ) { int x=10,y=0; int z=x/y; 该程序运行后,输出结果如图所示: D:\\JAVA\\XT>java Exer6_1 Exception in thread”main” zero At <:6> class Exer6_2 {

public static void main(String args[]) {

int array1[]={6,0,8}; for(int i=0;i<;i++) {

try {

int d=100/array[i]; 正常:d=“+d); }

catch(ArithmeticException e) {

\算术异常\; }

catch(ArrayIndexOutOfBoundsException e) {

\下标越界异常\ }

finally {

\异常处理结束!\\n\;

}

} } }

运行该程序后,输出如图所示

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4