异常处理练习题
- 格式:doc
- 大小:29.00 KB
- 文档页数:4
异常处理练习题一、选择题1.java中用来抛出异常的关键字是A、tryB、catchC、throwD、finally2.关于异常,下列说法正确的是A、异常是一种对象B、一旦程序运行,异常将被创建C、为了保证程序运行速度,要尽量避免异常控制D、以上说法都不对3.()类是所有异常类的父类。
A、ThrowableB、ErrorC、ExceptionD、AWTError4.java语言中,下列哪一子句是异常处理的出口A、try{…}子句B、catch{…}子句C、finally{…}子句D、以上说法都不对5.下列程序的执行,说法正确的是public class MultiCatch{public static void main(String args[]){try{int a=args.length;int b=42/a;int c[]={1};c[42]=99;System.out.println(“b=”+b);}catch(ArithmeticException e){System.out.println(“除0异常:”+e);}catch(ArrayIndexOutOfBoundsException e){System.out.println(“数组超越边界异常:”+e);}}}A、程序将输出第15行的异常信息B、程序第10行出错C、程序将输出“b=42”D、程序将输出第15和19行的异常信息6.下列程序的执行,说法正确的是class ExMulti{static void procedure(){try{int c[]={1};c[42]=99;}catch(ArrayIndexOutOfBoundsException e){System.out.println(“数组超越界限异常:”+e);}}public static void main(String args[]){try{procedure();int a=args.length;int b=42/a;System.out.println(“b=”+b);}catch(ArithmeticException e){System.out.println(“除0异常:”+e);}}}A、程序只输出第12行的异常信息B、程序只输出第26行的异常信息C、程序将不输出异常信息D、程序将输出第12行和第26行的异常信息7.下面程序抛出了一个“异常”并捕捉它。
2021高中信息科学Python操作题库(6套附答案)简介本文档提供了2021年高中信息科学Python操作题库,共包含6套题目,并附有答案。
这些题目旨在帮助高中学生提高他们的Python编程技能,同时提供了简单的策略和避免法律复杂性的指导原则。
题目列表以下是本套操作题库中的题目列表:1. Python基础:包括变量、数据类型、运算符等基本知识的练习题。
2. 条件语句和循环:包括if语句、for循环和while循环的练习题。
3. 函数和模块:包括函数定义、函数调用和模块导入的练习题。
4. 文件操作:包括读写文件和处理文件内容的练习题。
5. 数据结构:包括列表、元组、字典和集合等数据结构的练习题。
6. 高级概念:包括面向对象编程、异常处理和正则表达式等高级概念的练习题。
答案说明每个题目都附有答案,供学生在完成练习后进行自我评估。
答案部分提供了简洁的解决方案,以帮助学生理解问题的解决思路和Python编程技巧。
使用建议以下是使用本套题库的一些建议:1. 在开始练习之前,请确保已经掌握了Python的基本语法和常用函数的使用方法。
2. 每个题目都有一定的难度,建议按照顺序完成,逐渐增加难度。
3. 在解答问题时,尽量独立思考,避免依赖他人的帮助。
这有助于提高自己的问题解决能力和编程技能。
4. 如果遇到困难,可以参考答案部分进行思路的启发,但不建议完全照搬答案。
5. 在完成所有题目后,可以进行自我评估,查漏补缺,进一步提高自己的编程水平。
希望这套题库能够对高中学生的Python学习有所帮助!。
Java⽇常练习题,每天进步⼀点点(11)⽬录1、对接⼝的描述正确的是()2、类中的数据域使⽤private修饰为私有变量,所以任何⽅法均不能访问它。
3、已知如下类定义:4、在java的⼀个异常处理中,可以包含多个的语句块是()。
5、关于Java语⾔中的final关键字的使⽤,下列说法正确的是()6、在 main() ⽅法中给出的整型数组,如果将其写到⼀个⽂件中,需要()。
7、下列有关Servlet的⽣命周期,说法不正确的是?8、What is displayed when the following is executed?9、假定Base b = new Derived(); 调⽤执⾏b.methodOne()后,输出结果是什么?10、下⾯关于变量及其范围的陈述哪些是不正确的()答案汇总:总结承蒙各位厚爱,我们⼀起每天进步⼀点点!(⿏标选中空⽩处查看答案)1、对接⼝的描述正确的是()正确答案: A⼀个类可以实现多个接⼝接⼝可以有⾮静态的成员变量在jdk8之前,接⼝可以实现⽅法实现接⼝的任何类,都需要实现接⼝的⽅法题解:A,⼀个类只能有⼀个直接⽗类,但是继承是有传递性的。
⼀个类可以实现多的接⼝。
⼀个接⼝可以继承多个类。
B,接⼝中没有普通变量(普通成员变量),接⼝中都是常量,默认修饰符:public static finalC,JDK8之前,接⼝中的⽅法都是默认public abstract的,JDK8之后,接⼝中可以有static、default的修饰的⽅法,⼀旦被修饰,⽅法必须有⽅法体(抽象⽅法可是没有⽅法体的),接⼝中的⽅法都不能被private和protected 修饰,同时外部接⼝、类只能被public修饰或者不写,但是内部接⼝、类可以被四个访问修饰符修饰。
D,实现接⼝,其实就是需要重写接⼝中的abstract⽅法,⼀旦实现的类没有重写完,那么这个类必须是个抽象类(抽象类中可以没有抽象⽅法,但是有抽象⽅法的类必须是抽象类)。
awk 练习题一、文本处理基础1.1 文本过滤1. 读取文件`data.txt`,输出包含单词"error"的所有行。
2. 读取文件`data.txt`,输出第三列数值大于100的所有行。
3. 读取文件`data.txt`,输出第一列以字母"A"开头的所有行。
1.2 文本统计4. 读取文件`data.txt`,统计并输出文件中包含单词"warning"的行数。
5. 读取文件`data.txt`,计算第二列数值的总和。
6. 读取文件`data.txt`,计算第三列数值的平均值。
1.3 文本排序7. 读取文件`data.txt`,按照第一列数值升序排序。
8. 读取文件`data.txt`,按照第二列数值降序排序。
9. 读取文件`data.txt`,按照第三列数值升序排序,如果第三列相同,则按照第一列降序排序。
二、模式匹配与替换2.1 模式匹配10. 读取文件`data.txt`,输出匹配正则表达式`[09]+`的所有行。
11. 读取文件`data.txt`,输出匹配正则表达式`[azAZ]+`的所有行。
12. 读取文件`data.txt`,输出匹配正则表达式`[09]{3}[09]{2}[09]{4}`的所有行。
2.2 文本替换13. 读取文件`data.txt`,将所有出现的"oldword"替换为"newword"。
14. 读取文件`data.txt`,将所有出现的数字替换为星号``。
15. 读取文件`data.txt`,将所有出现的电子邮件地址替换为""。
三、数组与循环3.1 数组操作16. 读取文件`data.txt`,将第一列的所有数值存储到数组中,并输出数组内容。
17. 读取文件`data.txt`,统计每个单词出现的次数,并输出结果。
18. 读取文件`data.txt`,将每行的第一列和第二列作为键值对存储到数组中,并输出数组内容。
异常分娩练习题在医学领域中,异常分娩是指与正常自然分娩过程有所不同的分娩方式。
这些异常情况可能导致困难或危险,并需要医疗人员进行干预和处理。
为了提高医务人员应对异常分娩的能力,以下是一些异常分娩的练习题,供医务人员参考。
练习题一:肩难产肩难产是指胎儿的肩膀被困在产妇的骨盆骨架中,导致胎儿的平躺不能顺利通过产道。
请结合肩难产的病因、临床表现和处理方法,回答以下问题:1. 肩难产的常见病因是什么?2. 在肩难产的初步处理中,应该采取哪些措施?3. 如果初步处理无效,进一步处理肩难产应该怎么做?4. 如何预防肩难产的发生?练习题二:窒息窒息是指在分娩过程中,新生儿无法正常进行呼吸。
请回答以下问题:1. 窒息的危险因素有哪些?2. 如何进行窒息的初步处理?3. 除了人工呼吸外,还有哪些处理方法可以采用?4. 如何进行新生儿的复苏?练习题三:阴道破裂阴道破裂是指分娩过程中阴道发生撕裂伤,可能导致产后出血等严重后果。
请回答以下问题:1. 阴道破裂的风险因素是什么?2. 阴道破裂的临床表现有哪些?3. 阴道破裂的处理方法是什么?4. 阴道破裂后如何进行伤口缝合和护理?练习题四:羊水栓塞羊水栓塞是指羊水中的羊水栓子进入孕妇的肺循环,造成肺血管阻塞。
请回答以下问题:1. 羊水栓塞的病因是什么?2. 羊水栓塞的早期症状有哪些?3. 如何进行羊水栓塞的紧急处理?4. 羊水栓塞的并发症有哪些?练习题五:臀位娩出臀位娩出是指胎儿在分娩过程中以臀部先娩出而不是头部。
请回答以下问题:1. 臀位娩出的原因是什么?2. 臀位娩出的临床表现有哪些?3. 如何进行臀位娩出的紧急处理?4. 臀位娩出是否需要行剖宫产?以上是五个关于异常分娩的练习题,旨在帮助医务人员熟悉异常分娩的处理方法。
医务人员应该掌握适当的知识和技巧,以便在面对异常分娩时能够迅速行动并保证母婴的安全。
只有通过不断的练习和学习,医务人员才能真正做到善于处理各种异常情况。
异常处理练习题一、选择题1.java中用来抛出异常的关键字是A、tryB、catchC、throwD、finally2.关于异常,下列说法正确的是A、异常是一种对象B、一旦程序运行,异常将被创建C、为了保证程序运行速度,要尽量避免异常控制D、以上说法都不对3.()类是所有异常类的父类。
A、ThrowableB、ErrorC、ExceptionD、AWTError4.java语言中,下列哪一子句是异常处理的出口A、try{…}子句B、catch{…}子句C、finally{…}子句D、以上说法都不对5.下列程序的执行,说法正确的是public class MultiCatch{public static void main(String args[]){try{int a=args.length;int b=42/a;int c[]={1};c[42]=99;System.out.println(“b=”+b);}catch(ArithmeticException e){System.out.println(“除0异常:”+e);}catch(ArrayIndexOutOfBoundsException e){System.out.println(“数组超越边界异常:”+e);}}}A、程序将输出第15行的异常信息B、程序第10行出错C、程序将输出“b=42”D、程序将输出第15和19行的异常信息6.下列程序的执行,说法正确的是class ExMulti{static void procedure(){try{int c[]={1};c[42]=99;}catch(ArrayIndexOutOfBoundsException e){System.out.println(“数组超越界限异常:”+e);}}public static void main(String args[]){try{procedure();int a=args.length;int b=42/a;System.out.println(“b=”+b);}catch(ArithmeticException e){System.out.println(“除0异常:”+e);}}}A、程序只输出第12行的异常信息B、程序只输出第26行的异常信息C、程序将不输出异常信息D、程序将输出第12行和第26行的异常信息7.下面程序抛出了一个“异常”并捕捉它。
汽车知识常见故障处理题库姓名:________ 部门:________ 成绩:________(一)、判断题1、机油滤清器旁通阀弹簧弹力过高或装配不当会引起旁通阀开启困难。
对错2、发动机机油压力低,则机油报警灯熄灭。
对错3、发动机运转中,机油压力过高时,机油压力表显示忽高忽低。
对错4、发动机起动后,机油压力过低时,机油压力会缓慢下降后,又升高。
对错5、行车中,若发现因机油量不足造成发动机机油压力过低,应停车检查是否有机油泄漏现象及泄漏原因。
对错6、汽车长时间在上坡路段行驶,容易造成发动机温度过高。
对错7、汽车长时间超速或超载行驶,容易造成发动机温度过高。
对错8、水箱内的冷却液不足,行车中会造成发动机温度过高。
对错9、车辆行驶中冷却液温度正常,停车后立即沸腾的主要原因是水温传感器失效。
对10、车辆水温表显示值接近100℃,但冷却液不沸腾的主要原因是发动机水套内水垢过多。
对错11、车辆冷却液液面过低,温度报警灯可能会亮起。
对错12、风扇传动带过松无法调整时,应进行更换。
对错13、离合器踏板自由行程越大,分离越彻底。
对错14、离合器踏板没有自由行程会造成离合器分离不彻底。
对错15、离合器踏板自由行程过大会造成离合器打滑。
对错16、离合器踏板没有自由行程可能会造成离合器打滑或发抖。
对错17、离合器摩擦片变形,可能会引起离合器发抖。
对错18、离合器分离轴承滑润不良,不会引起离合器异响。
对错19、离合器分离轴承卡滞,不会引起离合器异响。
对20、离合器分离轴承烧毁,不会引起离合器异响。
对错21、变速器齿轮油油量不足,易会造成变速器挂挡困难。
对错22、变速器齿轮油品质下降,易会造成变速器挂挡困难。
对错23、汽车起步或变速时有异响,伴有车身抖动,则异响来自变速器。
对错24、变速杆变形,可能会引起变速器跳挡或变速器异响。
对错25、后桥润滑油量不足,可能会造成汽车行驶、滑行时后桥异响。
对错26、制动踏板自由行程过小可能会造成气压制动不良。
数据预处理练习题数据预处理是数据分析的第一步,它的目的是对原始数据进行清洗、变换和集成,以便将其应用于机器学习或其他分析任务中。
本文将介绍一些常见的数据预处理练习题,并提供解决方案。
一、缺失值处理缺失值是指在数据集中某些变量的取值为空或未记录。
缺失值可能对数据分析产生严重的影响,因此需要采取合适的方法进行处理。
以下是一些处理缺失值的练习题:1. 统计数据集中每个变量的缺失值数量和缺失值比例。
解决方案:可使用统计函数计算每个变量的缺失值数量,并除以数据集的总观测数得到缺失值比例。
2. 对于缺失值比例较高的变量,选择合适的方法填充缺失值。
解决方案:常用的填充方法包括均值填充、中位数填充、众数填充、插值填充等,根据变量的类型和数据分布选择合适的填充方法。
二、异常值处理异常值是指在数据集中与大部分样本明显不同的观测值,可能由数据记录错误或其他原因导致。
异常值会对数据分析结果产生误导,并降低模型的准确性。
以下是一些处理异常值的练习题:1. 使用箱线图或散点图等可视化方法检测异常值。
解决方案:绘制箱线图或散点图,观察是否存在与其他观测值明显不同的异常值。
2. 对于检测到的异常值,选择合适的方法进行处理。
解决方案:处理异常值的方法包括删除异常值、替换为合理的值或使用特殊的异常值处理方法(如Winsorize方法)。
三、数据变换数据变换是将原始数据进行转换,使其符合数据分析的要求。
常见的数据变换包括标准化、归一化、对数变换等。
以下是一些数据变换的练习题:1. 对于数值型变量,使用合适的方法进行标准化。
解决方案:常用的标准化方法包括Z-score标准化和最小-最大标准化,选择合适的方法对数据进行标准化。
2. 对于偏态分布的变量,使用对数变换进行变换。
解决方案:取变量的对数可以使得偏态分布接近正态分布,从而有利于后续的数据分析。
四、数据集成数据集成是将来自不同数据源的数据进行整合,形成一个完整的数据集。
数据集成可以通过字段合并、记录合并等方法实现。
C练习题一、基础语法1. 声明一个整型变量并赋值为10。
2. 声明一个浮点型变量并赋值为3.14。
3. 声明一个字符串变量并赋值为"Hello, World!"。
4. 声明一个布尔变量并赋值为true。
5. 创建一个名为`MyClass`的类,并在其中声明一个名为`myField`的私有整型字段。
6. 在`MyClass`类中添加一个构造函数,接受一个整型参数并赋值给`myField`字段。
7. 在`MyClass`类中添加一个名为`PrintField`的方法,打印出`myField`字段的值。
二、控制结构8. 编写一个程序,使用`if`语句判断一个整数变量是否大于0。
9. 编写一个程序,使用`switch`语句根据整数变量的值输出对应的星期名称。
10. 编写一个程序,使用`for`循环打印1到10的数字。
11. 编写一个程序,使用`foreach`循环遍历一个整数数组并打印每个元素。
12. 编写一个程序,使用`while`循环计算1到10的阶乘。
三、函数和方法13. 编写一个名为`Add`的方法,接受两个整数参数并返回它们的和。
14. 编写一个名为`Multiply`的方法,接受两个整数参数并返回它们的乘积。
15. 编写一个名为`PrintNumbers`的方法,接受一个整数参数,打印从1到该参数的所有数字。
16. 编写一个名为`ReverseString`的方法,接受一个字符串参数并返回其反转后的字符串。
17. 编写一个名为`FindMax`的方法,接受一个整数数组参数并返回数组中的最大值。
四、面向对象18. 创建一个名为`Person`的类,包含姓名和年龄两个属性。
19. 在`Person`类中添加一个构造函数,接受姓名和年龄作为参数。
20. 在`Person`类中添加一个名为`PrintInfo`的方法,打印出该人的姓名和年龄。
21. 创建一个`Student`类,继承自`Person`类,并添加一个名为`Grade`的属性。
Python练习题与参考答案一、单选题(共57题,每题1分,共57分)1.关于Python字符编码,以下选项中描述错误的是( )A、ord(x)和chr(x)是一对函数B、chr(x)将字符转换为Unicode编码C、Python可以处理任何字符编码文本D、Python默认采用Unicode字符编码正确答案:B2.关于return语句,以下选项中描述正确的是( )A、return只能返回一个值B、函数必须有一个return语句C、函数中最多只有一个return语句D、函数可以没有return语句正确答案:D3.( )函数是指直接或间接调用函数本身的函数A、递归B、闭包C、lambdaD、匿名正确答案:A4.关于 Python 语言的注释,以下选项中描述错误的是( )A、Python 语言有两种注释方式:单行注释和多行注释B、Python 语言的单行注释以#开头C、Python 语言的单行注释以单引号 ' 开头D、Python 语言的多行注释以 ' ' '(三个单引号)开头和结尾正确答案:C5.面代码的输出结果是( )>>> oct(–255)A、‘0d–377’B、‘0o–377’C、‘–0d377’D、‘–0o377’正确答案:D6.下面代码的输出结果是( ) >>>f=lambda x,y:y+x>>>f(10,10)A、10,10B、10C、20D、100正确答案:C7.Python 3.x 版本的保留字总数是( )A、27B、33C、16D、29正确答案:B8.关于Python语言的注释,以下选项中描述错误的是( )A、Python语言的单行注释以单引号 ' 开头B、Python语言有两种注释方式:单行注释和多行注释C、Python语言的多行注释以'''(三个单引号)开头和结尾D、Python语言的单行注释以#开头正确答案:A9.以下代码中calculate( )函数属于哪个分类def calculate(number):Result = 0 i = 1While i <= number: result = result + i i += 1Return resultResult = calculate(100) print('1~100的累积和为:', result)A、无参无返回值函数B、有参有返回值函数C、无参有返回值函数D、有参无返回值函数正确答案:B10.以下选项对应的方法可以辅助用于从CSV文件中解析二维数据的是( )A、count()B、strip()C、format()D、center()正确答案:B11.关于open()函数的文件名,以下选项中描述错误的是( )A、文件名可以是相对路径B、文件名不能是一个目录C、文件名对应的文件可以不存在,打开时不会报错D、文件名可以是绝对路径正确答案:C12.下面( )不是Python合法的标识符A、40XLB、selfC、int32D、name正确答案:A13.下列Python保留字中,不用于表示分支结构的是( )A、elifB、inC、ifD、else正确答案:B14.以下不属于Python语言保留字的是( )A、TrueB、passC、doD、while正确答案:C15.以下关于元组的描述正确的是A、元组中的元素允许被修改B、创建元组tup:tup = ();C、创建元组tup:tup = (50);D、元组中的元素允许被删除正确答案:B16.下列 for 语句中,在 in 后使用不正确的是( ) for var in ( ) : print(var)A、(1)B、range(0, 10, 5)C、[1, 2, 3, 4, 5]D、set(‘str’)正确答案:A17.假设a=9,b=2,那么下列运算中,错误的是()A、a+b的值是11B、a%b的值是1C、a**b的值是18D、a//b的值是4正确答案:C18.关于字符串下列说法错误的是( )A、字符串以\0标志字符串的结束B、在三引号字符串中可以包含换行回车等特殊字符C、既可以用单引号,也可以用双引号创建字符串D、字符应该视为长度为1的字符串正确答案:A19.以下的布尔代数运算错误的是( )A、(False and x) == FalseB、(True or x) == TrueC、not (a and b) == not (a) and not (b)D、(True or False) == True正确答案:C20.下列Python语句正确的是 ( )A、max = x > y ? x : yB、if (x > y) print xC、min = x if x < y: else yD、while True : pass正确答案:D21.( )模块是python标准库中最常用的模块之一。
异常处理练习题
一、选择题
中用来抛出异常的关键字是
A、try
B、catch
C、throw
D、finally
2.关于异常,下列说法正确的是
A、异常是一种对象
B、一旦程序运行,异常将被创建
C、为了保证程序运行速度,要尽量避免异常控制
D、以上说法都不对
3.()类是所有异常类的父类。
A、Throwable
B、Error
C、Exception
D、AWTError 语言中,下列哪一子句是异常处理的出口
A、try{…}子句
B、catch{…}子句
C、finally{…}子句
D、以上说法都不对
5.下列程序的执行,说法正确的是
public class MultiCatch
{
public static void main(String args[])
{
try
{
int a=;
int b=42/a;
int c[]={1};
c[42]=99;
}
catch(ArithmeticException e)
{
除0异常:”+e);
}
catch(ArrayIndexOutOfBoundsException e)
{
数组超越边界异常:”+e);
}
}
}
A、程序将输出第15行的异常信息
B、程序第10行出错
C、程序将输出“b=42”
D、程序将输出第15和19行的异常信息
6.下列程序的执行,说法正确的是
class ExMulti
{
static void procedure()
{
try
{
int c[]={1};
c[42]=99;
}
catch(ArrayIndexOutOfBoundsException e)
{
数组超越界限异常:”+e);
}
}
public static void main(String args[])
{
try
{
procedure();
int a=;
int b=42/a;
}
catch(ArithmeticException e)
{
除0异常:”+e);
}
}
}
A、程序只输出第12行的异常信息
B、程序只输出第26行的异常信息
C、程序将不输出异常信息
D、程序将输出第12行和第26行的异常信息
7.下面程序抛出了一个“异常”并捕捉它。
请在横线处填入适当内容完成程序。
class TrowsDemo
{
static void procedure() throws IllegalAccessException
{
procedure”);
throw____new___IllegalAccessException(“demo”);
}
public static void main(String args[])
{
try
{
procedure();
}
___catch (IllegalAccessException e)________
{
捕获:”+e);
}
}
8.对于catch子句的排列,下列哪种是正确的( )
A、父类在先,子类在后
B、子类在先,父类在后
C、有继承关系的异常不能在同一个try程序段内
D、先有子类,其他如何排列都无关
9.在异常处理中,如释放资源、关闭文件、关闭数据库等由( )来完成。
A、try子句
B、catch子句
C、finally子句
D、throw子句
10.当方法遇到异常又不知如何处理时,下列哪种说法是正确的( )
A、捕获异常
B、抛出异常
C、声明异常
D、嵌套异常
11.哪个关键字可以抛出异常
A、transient
B、finally
C、throw
D、static
12.一个异常将终止( )
A、整个程序
B、只终止抛出异常的方法
C、产生异常的try块
D、×上面的说法都不对
二、填空题
1、catch子句都带一个参数,该参数是某个异常的类及其变量名,catch用该参数去与__异常____对象的类进行匹配。
2、java虚拟机能自动处理_____RuntimeException_______异常。
3、变量属性是描述变量的作用域,按作用域分类,变量有局部变量、类变量、方法参数和____对象变量_____
4、捕获异常要求在程序的方法中预先声明,在调用方法时用try-catch-__finally____语句捕获并处理。
5、java语言认为那些可预料和不可预料的出错称为____Throwable___
6、按异常处理不同可以分为运行异常、捕获异常、声明异常和__自定义异常____几种。
7、抛出异常的程序代码可以是____java应有程序______或者是JDK中的某个类,还可以是JVM.
8、抛出异常、生成异常对象都可以通过__throws句实现。
9、捕获异常的统一出口通过___finally____语句实现。
10、java语言的类库中提供了一个__Throwable___类,所有的异常都必须是它的实例或它子类的实例。
11、Throwable类有两个子类:_____Error_____类和Exception类。
12、对程序语言而言,一般有编译错误和____运行_____错误两类。
13、下面程序定义了一个字符串数组,并打印输出,捕获数组超越界限异常。
请在横线处填入适当的内容完成程序。
public class HelloWorld
{
int i=0;
String greetings[]= {
“Hello world!”,
“No,I mean it!”,
“HELLO WORLD!!”
};
while(i<4)
{
___try______
{
e)
{
Index Value”);
i=-1;}
finally
{
is always printed”);
}
i++;
}
}
三、判断题
1. ( n ) 程序中抛出异常时(throw …),只能抛出自己定义的异常对象。
2. ( y ) 一个异常处理中finally语句块只能有一个或者可以没有。
3.( y)异常类对象代表当前出现的一个具体异常。
4.( y )java语言中的所有异常类都是的子类。
5.( n ) 如果异常发生时,没有捕获异常的代码,程序会正常执行。
四、编程题
1.参考下面的程序,试修改程序,捕获相关异常,使得程序能正常运行。
[提示:用错误数据测试,即可得到异常类名,运行时主方法参数输入abc 测试]
public class StringIndexOutOf
{
public static void main(String args[])
{
"字符串索引越界异常");
String str=args[0]; 第四个字符为”+(3));
int aa=(args[0]); 平方为”+aa*aa);
}
}
2.从命令行得到5个整数,放入一整型数组,然后打印输出,要求:如果输入数据不为整数,要捕获()产生的异常,显示“请输入整数”,捕获输入参数不足5个的异常(数组越界),显示“请输入至少5个整数”。
3.写一个方法void sanjiao(int a,int b,int c),判断三个参数是否能构成一个三角形,如果不能则抛出异常IllegalArgumentException,显示异常信息a,b,c+”不能构成三角形”,如果可以构成则显示三角形三个边长,在主方法中得到命令行输入的三个整数,调用此方法,并捕获异常。
4.自定义类Sanj,其中有成员x,y,z,作为三边长,构造方法Sanj(a,b,c)分别给x,y,z赋值,方法求面积getArea和显示三角形信息(三个边长)showInfo,这2个方法中当三条边不能构成一个三角形时要抛出自定义异常NotSanjiaoException,否则显示正确信息。
在另外一个类中的主方法中构造一个Sanj对象(三边为命令行输入的三个整数),显示三角形信息和面积,要求捕获异常。