




已阅读5页,还剩55页未读, 继续免费阅读
JAVA语言程序设计第2版第16章课后习题答案.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第 1 章Java 语言概述 选择题选择题 1-1 在下列概念中,Java 语言只保留了(B) A. 运算符重载B. 方法重载 C. 指针D. 结构和联合 1-2 下列关于 Java 语言特性的描述中,错误的是(D) A. 支持多线程操作 B. Java 程序与平台无关 C. Java 和程序可以直接访问 Internet 上的对象 D. 支持单继承和多继承 1-3 下列关于 Java Application 程序在结构上的特点的中,错误的是(C) A. Java 程序是由一个或多个类组成的 B. 组成 Java 程序的若干个类可以放在一个文件中,也可以放在多个文件中 C. Java 程序的文件名要与某个类名相同 D. 组成 Java 程序的多个 类中,有且仅有一个主类 1-4 Java 程序经过编译后生成 的文件的后缀是(C) A. .objB. .exeC. .classD. .java 1-5 下列关于运行字节码文件的命令行参数的描述中,正确的是(A) A. 第一个命令行参数(紧跟命令字的参数)被存放在 args0中 B. 第一个命令行参数被存放在 args1中 C. 命令行的命令字被存放在 args0中 D.数组 args的大小与命令行参数的个数无关 判断题判断题 1-1 JavaC+的语言之前问世的。 (错) 1-2 Java 语言具有较好的安全性和可移植性及与平台无关等特性。 (对) 1-3 Java 语言中取消了联合的概念,保留了结构概念。 (错) 1-4 Java 语言中数据类型占内在字节数与平台无关。 (对) 1-5 Java 语言中可用下标和指针两种方式表示数组元素。 (错) 1-6 Java 语言的源程序不是编译型的,而是编译解释型的。 (对) 1-7 操作系统中进程和线程两个概念是没有区别的。 (错) 1-8 Java 语言既是面向对象的又是面向网络的高级语言。 (对) 1-9 Java 程序分为两大类:一类是 Application 程序,另一类是 Applet 程序。前者又称 Java 应用程序,后者又称为 Java 小应用程序。 (对) 1-10Java Application 程序是由多个文件组成的,其中可以有也可以没有主文件。 (错) 1-11组成 Java Application 的若干类中,有且仅有一个主类,只有主类中含有主方法 main()。 (对) 1-12Java Application 程序中, 必有一个主方法 main () , 该方法有没有参数都可以。 (对) 1-13Java 程序中是不区分大小写字母的。 (错) 1-14下述两个命令:javac 和 java 是不同的,编译时用前者,运行时用后者。 (对) 1-15Java 程序编译后生成的是字节码文件,其后缀是.exe。 (错) 1-16字节码文件机器是不能直接识别的,它要经过解释器,边解释边执行。 (对) 1-17在 Java 程序中,使用 import 语句引入类是在解释器中实现的。 (对) 1-18在运行字节码文件时, 使用 java 命令, 一定要给出字节码文件的扩展名.class。 (错) 1-19Java 程序中有多个类,编译后只生成一个字节码文件,其名字同主类名。 (错) 1-20Java 程序中出现的输出方法 println()和 print()是完全一致的。 (错) 分分析程序的输出结果题析程序的输出结果题 1-1 程序 Exerl_1.java import java.io.*; public class Exerl_1 public static void main (String args ) System.out.print(“This is a “); System.out.println(“strint.“) 该程序的输出结果如下: This is a string. 1-2 程序 Exerl_2.java Import java.io.*; Public class Exerl_2 Public static void mian(String args ) Char ch=“ “; System.out.println(“Input a character:“); Try ch=(char)System.in.read(); Catch(IOException e) System.out.println(“The character is “+ch+“); 该程序的输出结果如下 Input a character:k The character is k 1-3 程序 Exerl_3.java import java.io.*; public class Exerl_3 Public static void main(String args ) String str= “ System.out.println(“Input a string:“); Try BufferedReader in =new BufferedReader(new InputStreamReader(System.in); str=in.readLine(); Catch(IOException e ) System.out.println(“The string is “+str+ “ “ “); 1-4 程序 Exerl_4.java import java.io.* public class Exerl_4 public static void main(String args ) Aa=newA; a.i=8; a.d=1.25; a.meth(“该程序输出结果如下所示“); System.out.println(“ti=“+a.i+“,d=“+a.d); classA int i; double d; void meth(string str) System.out.println(str); 该程序输出结果如下所示 i=8,d=1.25 编程题编程题 1-1 编写一个 Java Application 程序,使该程序运行后输出字符串“Hello!How are you.“。 参考程序内容如下 import java.io.*; public class prol_1 public static void main(String args ) System.out.println(“Hello!How are you.“); 1-2 编写一个 Java Application 程序,使该程序输出显示如下结果: Var1=10,var2=19.5 Ok! 参考程序内容如下: import java.io.*; public class prol_2 public static void main(String args ) int var1=10; double var2=19.5; System.out.println(“var1=“+var1+“,var2=“+var2); System.out.println(“ok!“); 第 2 章Java 语言语法基础 选择题选择题 2-1 Java 语言所用的字符集中字符是 B 位。 A. 8 B. 16 C. 32 D. 64 2-2 下列关于标识符的描述中,正确的是 A 。 A. 标识符中可以使用下划线和美元符 B. 标识符中可以使用连接符和井号符 C. 标识符中大小写字母是无区别的 D. 标识符可选用关键字 2-3 Java 语言和各种分隔符中,非法的是 D 。 A. 空白符 B. 分号 C. 逗号 D. 问号 2-4 下列是 Java 语言中可用的注释,其中错误的是 C 。 A. / B. /*/ C. /*/ D. /*/ 2-5 Java 语言中字符型数据的长度是 B 位。 A. 8 B. 16 C. 32 D. 64 2-6 下列描述的两种数据类型的长度不相等的是 A 。 A. 字符型和布尔型 B. 字节型和布尔型 C. 短整型和字符型 D. 整型和单精度浮点型 2-7 下列是 Java 语言中的复合数据类型,其中错误的是 C 。 A. 数组 B. 接口 C. 枚举 D. 类 2-8 下面是关于 Java 语言中数据类型的强制转换的描述,其中错误的是 C,D 。 A. 当数据类型从高转换为低时需强制转换 B. 强制转换时使用强制转换去处符,形如() C. 浮点型数据强制转换为整型时,小数部分四舍五入 D. 赋值操作中都要采用强制类型转换 2-9 下列关于常量的描述中,错误的是 B,D 。 A. Java 语言的常量有 5 种 B. 浮点型数 12.456 是单精度的 C. 布尔型常量只有两个可选值:true 和 false D. 字符串常量含有结束符0 2-10下列关于定义符号常量的描述中,错误的是 A,C 。 A. 定义符号常量使用关键字 const B. 定义符号常量时要赋初值 C. 符号常量既可以定义为类成员,又可在方法中定义 D. 定义符号常量时必须给出数据类型 2-11下列关于变量的默认值的描述,其中错误的是 B,C 。 A. 定义变量而没有进行初始化时,该变量具有默认值 B. 字符型变量的默认值为换行符 C. 布尔型变量的默认值是 true D. 变量的默认值是可以被改变的 2-12下列关于变量定义的描述中,正确的是 A,C 。 A. 定义变量时至少应指出变量名字和类型 B. 定义变量时没有给出初值该变量可能是无意义值 C. 定义变量时,同一个类型多个变量间可用逗号分隔 D. 定义变量时必须要给变量初始化 2-13下列关于变量作用域的描述,错误的是 D 。 A. 在某个作用域定义的变量,仅在该作用域内是可见的,而在该作用域外是不可 见的 B. 在类中定义的变量的作用域在该类中的方法内可以使用 C. 在方法中定义 的变量的作用域仅在该方法体内 D. 在方法中作用域可嵌套,在嵌套的作用域中可以定义同名变量 2-14下列关于增 1(+)减 1(-)1 运算符的描述中,正确的是 A,B 。 A. 增 1 减 1 运算符都是单目运算符 B. 增 1 减 1 运算符都具有前缀运算和后缀运算 C. 增 1 减 1 运算符不会改变变量的值 D. 增 1 减 1 运算符前缀运算和后缀运算后表达式值是相同的 2-15关于运算符优先级的描述中,错误的是 D 。 A. 在表达式中,优先级高的运算符先进行计算 B. 赋值运算符优先级最高 C. 单目运算符优先级高于双目和三目运算符 D. 逻辑运算符优先级高于逻辑位运算符 2-16下列关于表达式的描述中,正确的是 A,C 。 A. 任何表达式都有确定的值和类型 B. 算数表达式的类型由第一个操作数的类型决定 C. 逻辑表达式的操作数是逻辑型的 D. 赋值表达式的类型取决于右值表达式的类型 2-17下列表达式中,非法的是 B,C 。 int a=5,b=6;double c=1.1,d=2.2 A. a+c+d B. (a+c)- - C. c”和“”都是右移运算符,其区别在于对向右移出的位是舍弃还是保 留。 (错) 2-26 赋值运算符组成的赋值表达式中,通常将右边表达式的类型转换为左边变量的类 型后再赋值。 (对) 2-27 三目运算符的 3 个操作数中,第一个操作数的类型必须是逻辑型的(对) 2-28 强制类型转换运算符的功能是将一个表达式的类型转换为所指定的类型。 (对) 2-29 对象运算符 instanceof 是一个单目运算符,其表达式的值的类的对象。 (错) 2-30 内存分配运算符 new 可以为创建的数组分配内存空间,但不能为创建的变量分配 空间。 2-31 运算符的优先级中,最低的是三目运算符。 (错) 2-32 运算符的结合性中,除了三目运算符是自右向左外,其余都是自左向右。 (错) 2-33 关系表达式和逻辑表达式的值都是布尔型的。 (对) 2-34 赋值表达式的值不能是逻辑型的。 (错) 2-35 条件表达式的类型总是“?”和“:”之间的操作数的类型。 (错) 2-36 块语句可能嵌套,外层块语句定义的变量在内层块语句中是可见的(对) 2-37 条件自勉中的表达式可以是任何表达式。 (错) 2-38 在条件语句的嵌套结构中,一个 if 子句最多有一个 else 子句与它配对,而且一定 是距离它最近的。 (对) 2-39 开关语句中,case 子句后面的可以是块语句。 (对) 、 2-40 循环语句中,表达式必须是逻辑型表达式。 (对) 2-41 在 Java 语言中,break 语句不能作用在的左边。 (错) 2-42 Java 语言中,数组在静态和动态赋值时都判越界。 (对) 2-43 说明或声明数组时不分配内存大小,创建数组时分配内存大小。 (对) 2-44 基本数据类型的数组在创建时系统将指定默认值。 (对) 2-45 数组在定义时可以进行初始化,使用初始值表。 (对) 2-46 Java 语言中数组元素只有下标表示,没有指针表示。 (对) 2-47 创建数组时,系统自动将数组元素个数存放在 length 变量中,可供用户对数组操 作时使用。 (对) 2-48 字符串可分为字符串常量和字符串变量两种,它们都是对象。 (对) 2-49 Java 语言中不使用字符数组存放字符串(对) 2-50 下列创建字符串 s 的方法是错误的。 (对) char ch=m,m,n,n; char s=new char(ch); 计算表达式的值,上机验证其结果题计算表达式的值,上机验证其结果题 2-1已知:int a=3,b=5; 求下列表达式的值: (1)(a+b)%b (2)ba (3)-ba (4)A 求下列表达式的值: (1)x+y (2)x+4/5 (3)2*x=y (4)y/6*6 (5)y+=x-=1 答案(1)false(2)1.5(3)false(4)2.8(5)3.3 2-3 已知:Boolean b1=true, b2=false; int a=6; 求值: (1)b1 求值: (1)a0+a1 (2)a3=6 (3)a2*a34*a3 (4)(a0+=a1)+ +a2 (5)for(int i=1;i2) System.out.println(“AB“); else System.out.println(“BA“); if(i=5) break; System.out.println(“i=“+i); 输出结果如下: BA BA AB AB AB i=5 2-7Exer2_7.java 程序 public class Exer2_7 public static void main(String args) long j1=1,j2=1; for(int i=5;i=1;i-) j1*=i; for(int i=4;i=1;i-) j2*=i; System.out.println(“5!+4!“+(j1+j2); 输出结果如下: 5! 4!=144 2-8Exer2_8.java 程序 public class Exer2_8 public static void main(String args) String s1=“123456“; char ch=4,5,6,7,8; double d; d=new double5; d0=1.2f;d1=2.3f;d2=3.4f;d3=4.5f;d4=5.6f; String s2=“ab“,“cd“,“ef“; inta=1,2,3,4,5,6,7,8,9; System.out.println(“s1=“+s1); for(ing i=0;ib 时, c 值为 a, 否则 c 值为 b。 int a,b,c; if(ab) c=a; else c=b; (9) 用 for 循环语句实现下述循环:循环变量 m 为 100,每次 m 循环减 10;当 m 等于 50 时退出循环,循环体为空语句。 for(int m=100;m=50;m-=10) (10) 使用带标号名的 break 语句,在双重 for 循环自勉结构中,一次从内层循环跳 出外层循环。 该功能程序段如下: F:for(ing i=) for(ing j=) break F; 2-12 编程求出一个一维 int 型数组的元素最大值、最小值、平均值和所有元素之和。 程序内容如下: import java.io.*; public class pro2_1 public static void main(String args) int a=23,76,45,21,63,90,46,83; int max,min,sum; max=min=a0; for(int i=1;iai) min=ai; for(int i=1;i)(=) ; 3-4 成员变量的非访问控制修饰符有(static) , (final) , (volatile) 。 3-5 在成员方法的定义中可省略的部分有(修饰符) , (参数表) , (异常类名列表) 。 3-6 Java 语言中,重载方法的选择是在(编译)时进行的,系统根据(参数个数) , (参数类 型) , (参数顺序)寻找匹配方法。 3-7 没有子类的类称为(最终类) ,不能被子类重载的方法称为(最终方法) ,不能被改变值 的量称为常量,又称为(最终变量) 。 3-8 创建一个对象时,通常要包含 3 项内容: (说明对象) ,给对象分配空间, (对象初始化) 。 3-9 系统规定 int 型变量默认值为(0) ,浮点型变量的默认值为(0.0) ,布尔型变量的默认 值为(false) 。 3-10 Java 语言中,定义子类时,使用关键字(extends)来给出父类名。如果没有指出父类, 则该类的默认父类为(object 类) 。 3-11 系统规定:表示当前类的构造方法用(this() ) ,表示直接父类的构造方法用(super () ) 。 3-12 接口中默认的成员变量的修饰符为(final) ,默认的成员方法的修饰符是(abstract) 。 3-13 实现接口中的抽象方法时,必须使用(完全相同)方法头,并且还要用(public)修饰 符。 3-14 包名与子包名之间用(.)分隔。加载包的关键字是(import) 。 3-15 字符串类又包含两大类,它们是(String)和(StringBuffer). 分析程序的输出结果题分析程序的输出结果题 3-1 Exer3_1.java classA int x,y,z,sum; A(int i,int j,int k) x=i; y=j; z=k; sum=x+y+z; boolean sameA(A al) if(al.x=x) else return false; boolean sameS(A al) if(al.sum=sum) return true; else return false; class Exer3_1 public static void main(String args) Aa=newA(2,5,8); Ab=newA(2,5,8); Ac=newA(5,8,2); System.out.println(a,sameA(b); System.out.println(a,sameA(c); System.out.println(a,sameA(b); System.out.println(a,sameA(c); 输出结果如下: true false true true 3-2 Exer3_2.java class B void meth(int i) System.out.println(“Int:“+i); void meth(double i) System.out.println(“Double:“+i); class Exer3_2 public static void main(String args) int i=8; double d=6.8; short s=10; float f=5.3f; byte b=9; char c=a; B ob=newB(); ob.meth(i); ob.meth(d); ob.meth(s); ob.meth(int)f); ob.meth(b); ob.meth(c); 输出结果如下: Int:8 Double: 6.8 Int:10 Int:5 Int:9 Int:97 3-3 Exer3_3.java class C int c; C(int a) c=0; for(int i=0;i和是用来表示 HTML 文件开始和结束的标记。 (错) 4-13 HTML 中多数标记是成对出现的,也有不成对出现的标记。 (对) 4-14 HTML 中是区分大小写字母的。 (错) 4-15 通过 HTML 文件中使用的 PARAM 标记可以向 Applet 程序传递参数的。 (对) 4-16 parseInt()方法的功能是将 int 型数据转换成 String 型数据的。 (错) 4-17 AWT 提供了许多标准的 GUI 组件和布局管理等类。 (对) 4-18 Java 语言采用了 16 位颜色标准,Java 的调色板保证 128 色。 (错) 4-19 Graphics 类提供了 3 种绘制文本的方法,其方法名都是 drawString()。 (对) 4-20 绘制椭圆的方法是 drawOval(),使用该方法也可以绘制圆。 (对) 分析程序的输出结果题分析程序的输出结果题 4-1 Exer4_1.java import java.applet.Applet; import java.awt.*; public class Exer4_1 extendsApplet String str=“学习 JAVA 小程序“; public void paint(Graphics g) g.drawString(str,100,100); 请读者自编相应的 HTML 文件 运行该程序之前,编写一个 HTML 文件,文件名为 Exer4_1.html。程序内容如下: 运行时,先将 Exer4_1.java 文件使用 javac 命令编译成 Exer4_1.class 文件,然后,再运 行 Exer4_1.html 文件,则输出显示如下信息: 学习 JAVA 小程序 4-2 Exer4_2.java import java.applet.Applet; import java.awt.*; public class Exer4_2 extendsApplet String str1,str2; public void init() str1=getParameter(“name“); str2=getParameter(“birthday“); if(str1=null)str1=“; if(str2=null)str2=“; public void paint(Graphics g) g.drawString(“姓名是“+str1+“出生年月日是“+str2,100,100); Exer4_2.html 文件内容如下: 运行该程序后,输出如下结果。 姓名是宋小山 出生年月日是 1966 年 8 月 8 日 4-3 Exer4_3.java import java.applet.Applet; import java.awt.*; public class Exer4_3 extendsApplet String str=“您好!“; char ch=H,e,l,l,o; byte byt=97,98,99,100,101,102; public void paint(Graphics g) g.drawBytes(byt,0,5,50,50); g.drawChars(ch,0,3,50,70); g.drawString(str,50,90); 运行前编写一个相应的 HTML 文件,运行输出结果如下: abcde Hel 您好! 4-4 Exer4_4.java import java.applet.Applet; import java.awt.*; public class Exer4_4 extendsApplet public void paint(Graphics g) for(int i=0;i 4-2 编写 Applet 程序,选择 3 种不同的字体写出字符串“I Love Beijing!”。 编写的 Applet 小程序文件名为 pro4_2.java,程序内容如下: import java.applet.Applet; import java.awt.*; public class pro4_2 extendsApplet Font fnt1=new Font(“Serif“,Font.ITALIC,25); Font fnt2=new Font(“Monospaced“,Font.BOLD,40); Font fnt3=new Font(“Helvetica“,Font.BOLD,40); public void paint(Graphics g) String str=“I Love Beijing!“; g.setFont(fnt1); g.setColor(Color.green); g.drawString(str,30,40); g.setFont(fnt2); g.setColor(Color.yellow); g.drawString(str,30,80); g.setFont(fnt3); g.setColor(Color.red); g.drawString(str,30,120); 相应的 HTML 文件读者自编。 4-3 编写 Applet 程序, 在一个椭圆内填写一个字符串。 椭圆大小和位置以及字符串内容和字 体都由读者自定。 编写的 Applet 小程序的文件名为 pro4_3.java,程序内容如下: import java.applet.Applet; import java.awt.*; public class pro4_3 extendsApplet public void paint(Graphics g) int x0=30,y0=35,W=300,H=100; g.setColor(Color.green); g.drawOval(x0,y0,W,H); g.setColor(Color.red); g.setFont(new Font(“Helvetica“,Font.BOLD,45); g.drawString(“北京,您好!“,50,100); 相应的 HTML 文件由读者自编。 第 5 章图形用户界面设计 选择题选择题 5-1 下列关于容器的描述中,错误的是 (D) A容器是由若干个组建和容器组成的 B容器是对图形界面中界面元素的一种管理 C容器是一种对指定宽和高的矩形范围 D容器都是可以独立的窗口 5-2 下列界面元素中,不是容器的是(A) A.ListB.FrameC.DialogD.Panel 5-3 下列关于实现图形用户界面的描述中,错误的是 (B,C) A放在容器中的组件首先要定义,接着要初始化 B放在容器中的多个组件是要进行布局的,默认的布局策略是 FlowLayout C容器中所有组件都是事件组件,都可以产生事件对象 D事件处理是由监听者定义的方法来实现的 5-4 下列关于组件类的描述中,错误的是 (A) A组件类中包含了文本组件类(TextComponent)和菜单组件类(MenuComponent) B标签(Label)和按钮(Button)是组件类(Component)的子类 C面板(Panel)和窗口(Window)是容器类(Container)的子类 D文本框(TextField)和文本区(TextArea)是文本组件类(TextComponent)的子类 5-5 在对下列语句的解释中,错误的是 (D) but.addActionListener(this); Abut 是某种事件对象,如按钮事件对象 Bthis 表示当前容器 CActionListener 是动作事件的监听者 D该语句的功能是将 but 对象注册为 this 对象的监听者 5-6 所有事件类的父类是(B) AActionEventBAwtEventCKeyEventDMouseEvent 5-7 所有 GUI 标准组件类的父类是 (C) AButtomBListCComponentDContainer 5-8 下列各种布局管理器中 Window 类、Dialog 类和 Frame 类的默认布局是(C) AFlowLayoutBCardLayoutCBorderLayout DGridLayout 5-9 在下列各种容器中, 最简单的无边框的又不能移动和缩放的只能包含在另一种容器中的 容器是 (D) AWindowBDialogCFrameDPanel 5-10 下列关于菜单和对话框的描述中,错误的是(C) AFrame 容器是可以容纳菜单组件的容器 B菜单条中可包含若干个菜单,菜单中又可包含若干菜单项,菜单项中还可包含菜单 子项 C对话框与 Frame 一样都可作为程序的最外层容器 D对话框内不含有菜单条,它由 Frame 弹出 判断题判断题 5-1 AWT 是抽象窗口工具包的英文缩写。 (对) 5-2 容器中只能包含有组件,而不能再含有容器。 (错) 5-3 容器分可以独立的窗口和不可以独立的窗口两种。 (对) 5-4 单选按钮提供“多选一”的输入选择,下拉列表提供“多选多”的输入选择。 (错) 5-5 所有容器的默认布局都是 FlowLayout。 (错) 5-6 所有的组件都是事件源。 (错) 5-7 Java 2 的事件处理方法是采用委托事件处理模型。 (对) 5-8 事件组件都应注册一个事件监听者。 (对) 5-9 事件监听者除了得知事件的发生外,还应调用相应方法处理事件。 (对) 5-10所有事件的父类是 EventObject 类。 (对) 5-11图形用户界面是由用户自定义成分、控制组件和容器组成的。 (对) 5-12所有 GUI 标准组件类的父类是 Component 类。 (对) 5-13所有容器类的父类是 Frame 类。 (错) 5-14标准和按钮都是事件源。 (对) 5-15文本去和文本框都可以引发两种事件:文本改变事件和动作事件。 (错) 5-16每个复选框有两种状态:“打开”和“关闭”状态。 (对) 5-17复选框组(CheckboxGroup)是由若干个按钮组成的。在一组按钮中可选多个。 (错) 5-18列表(List)是由多个选项组成的,只可在列表框的若干个选项选取一个。 (错) 5-19下拉列表(Choice)是一种“多选多”的输入界面。 (错) 5-20滚动条有两类:水平滚动条和垂直滚动条。 (对) 5-21画布(Canvas)是一种可容纳多个组件的容器。 (错) 5-22所有容器都采用顺序布局(FlowLayout)作为默认布局管理器。 (错) 5-23边界布局(BorderLayout)将容器分为东、西、南、北共 4 个区域。 (错) 5-24卡片布局(CardLayout)可使容器容纳多个组件,在同一时刻只显示若干个组件中的一 个。 (对) 5-25容器可容纳组件和容器,同一个容器中的组件可被同时显示或者同时隐藏。 (对) 5-26所有容器都是有边框的。 (错) 5-27Panel 容器是可以嵌套使用的。 (对) 5-28Applet 实际是一种特殊的 Panel 容器。 Java Applet 程序只负责它拥有的 Applet 容器内的 无边框区域。 (对) 5-29 窗口(Window)容器是一种独立窗口,但它不能作为程序的最外层容器。 (对) 5-30Frame 容器是有边框的容器,它也是一种独立窗口,只能作为最外层容器。 (对) 5-31Frame 容器可以容纳菜单组件,它实现了 MenuContainer 接口。 (对) 5-32MenuComponent 类是菜单组件的父类。 (对) 5-33菜单条(MunuBar) 、菜单(Munu) 、菜单项(MunuItem)是 3 中不同的菜单组件。 (错) 5-34对话框(Dialog)不是一种独立使用的容器。 (错) 5-35文件对话框(FileDialog)是对话框(Dialog)的子类,它是一种打开文件和保留文件的 对话框窗口。 (对) 分析程序输出结果 5-1 Exer5_1.java import java.applet.*; import java.awt.*; public class Exer5_1 extendsApplet private Label lab1,lab2; public void init() lab1=new Label(); lab1.setText(“标签文本左对齐“); lab1.setAlignment(Label.LEFT); lab2=new Label(“标签文本右对齐“,Label.RIGHT); setLayout(new GridLayout(3,3); add(lab1);add(lab2); 运行改程序后,输出结果如图 5-5 所示。 图 5-5 分析题 5-1 输出结果 5-2 Exer5_2.java import java.applet.*; import java.awt.*; import java.awt.event.*; public class Exer5_2 extendsApplet implementsActionListener,ItemListener List colList; String colName=“黑色“,“蓝色“,“浅蓝色“,“绿色“,“红色“,“黄色“; Color cols=Color.black,Color.blue,Color.cyan,Color.green,Color.red,Color.yellow; int t; public void init() colList=new List(4,false); colList.addActionListener(this); colList.addItemListener(this); for(int i=0;i C中可以有多个用逗号分隔的异常 D抛出异常的方法中要使用下述抛出异常语句:throw;其中,是异 常类的类名 6-5.下列关于用户创建自己的异常描述中,错误的是(D) A创建自己的异常应先创建一个异常类 B为实现抛出异常,须在可能抛出异常的方法中书写 throw 语句 C捕捉异常的方法是使用 try-catch-finally 语句格式 D使用异常处理不会使整个系统更加安全和稳定 判断题判断题 6-1.异常是一种特殊的运行错误的对象。 (对) 6-2.异常处理可以使整个系统更加安全和稳定。 (对) 6-3.异常处理是在编译时进行的。 (错) 6-4.Java 语言中异常类都是 java.lang.Throwable 的子类。 (对) 6-5.Throwable 类有两个子类:Error 类和 Exception 类。前者由系统保留,后者供应用程序 使用。(对) 6-6.异常通常是指 Error 类和 Exception 类。 (错) 6-7.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.如果异常类没有被捕获将会产生不正常的终止。 (对) 分析程序的输出结果分析程序的输出结果题题 6-1.Exer6_1.java public class Exer6_1 public static void main(String args ) int x=10,y=0; int z=x/y; System.out.println(“z=“+z); 该程序运行后,输出结果如图所示: D:JAVAXTjava Exer6_1 Exception in thread”main”java.lang.ArithmeticException:/by zero At Exer6_1.main 6-2.Exer6_2.java public class Exer6_2 public static void main(String args) int array1=6,0,8; for(int i=0;ijava Exer6_2 正常:d=16 异常处理结束! 算术异常! 异常处理结束! 正常:d=12 异常处理结束! 下标越界异常! 异常处理结束! 6-3 Exer6_3.java public class Exer6_3 public static void main(String args) int array1=6,0,8; for(int i=0;ijava Exer6_3 正常:d=16 异常处理结束! 异常:java.lang.ArithmeticException:/by zero 异常处理结束! 正常:d=12 异常处理结束! 异常:java.lang.ArrayIndexOutOfBoundsExcepiton:3 异常处理结束! 6-4 Exer6_4.java public class Exer6_4 public static void Test() int a=new int3; for(int i=0;ijava Exer6_4 正常:a0=5 正常:a1=6 正常:a2=7 异常:java.lang.ArrayIndexOutOfBoudsException: 3 异常处理结束! Exception in thread “main” java.lang.ArrayIndexOutOfBoundsExcepiton:3 at Exer6_4.Test at Exer6_4.main 6-5 Exer6_5.java class myException extends Exception static int a=0 myException(String s) super(s); a+; String show() return“自定义异常出现的次数:“+a; Public class Exer6_5 static void Test() throws myException myException e; e=new myException(“自定义异常n“); throw e; Public static void main(String args) for(int i=0;ijava Exer6_5 自定义异常出现的次数:1 myException:自定义异常 自定义异常出现的次数:2 myException:自定义异常 自定义异常出
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 数学建模思想融入高中数学教学的探索与实践
- 赤峰市人民医院技术带教能力考核
- 伊春市人民医院疼痛管理基础技能考核
- 通辽市中医院肝移植受体手术主刀医师资质评审
- 2025妇幼保健院病案归档上架考核
- 2025年中国生物质乙醇项目商业计划书
- 2025年中国十氢萘项目创业计划书
- 中国硬脂酸铅项目投资计划书
- 2025年中国无水磷酸二氢钠项目创业计划书
- 中国次磷酸锰项目创业计划书
- 门诊电子病历书写规范考核试卷有答案
- 2025年《党务工作基础知识》题库及答案
- 2025年翻译专业研究生入学考试试题及答案
- 设计文化衫课件
- 2025河南郑州海关缉私局警务辅助人员招聘4人考试参考试题及答案解析
- 2025至2030全球及中国聚醚醚酮垫圈行业项目调研及市场前景预测评估报告
- 公共资源交易知识培训
- 2025年成人高考专升本政治试题及答案
- 医疗机构药品采购招标文件范本
- 安全生产课题立项申报书
- PEST分析课件教学课件
评论
0/150
提交评论