实验六:java异常处理
实验目的:
1. 2. 3. 4. 5. 6.
了解Java异常处理机制的优点 了解Java异常的种类 掌握异常的捕获与处理 掌握异常的抛出 熟悉用户自定义异常 了解异常处理原则
实验步骤:
一.异常捕获和处理的练习
1. 下面源代码要捕捉的异常是除数为零和数组下标越界。通过修改a和c[]下标值体验程序。 2. 源代码如下:
3. 使用Eclipse开发工具,编写并完善上述代码,编译运行代码,查看程序执行结果。
● 按下条件分别修改数据,编译后运行,观察输出结果,分析在try…catch块里哪些语句没有被执行,为什么?块外哪些语句可被执行到,为什么? (1) 修改a=0,保持c[2]=200; (2) 保持a=10,修改c[3]=200; (3) 修改a=0,修改c[3]=200。
二.自定义异常的定义和使用的练习
1. 设计两个数求商的程序,并设定一个异常类,判断两数相除时,除数是否为零,当除数为零时将抛给自定义异常类,并输出除数为零。 2. 部分源代码如下:
3. 分析上述代码,将division方法体中的代码补充完整,判断输入的除数是否为0。如果为0,要抛出DivisorIsNotZeroException异常;如果不为0,则计算这个数的商。并按要求创建自定义异常类DivisorIsNotZeroException。在main方法中已经给出如何输入数据和调用所写方法。
4. 代码完善后,编译运行代码,输入下表数据进行验证,如果抛出异常填“Y”,否则填“N”。
表6-2-1 测试数据
● 分析自定义异常是如何创建的?
实验七:Java集合
实验目的
● 掌握Collection和Iterator接口的使用 ● 掌握List集合的使用 ● 了解集合的不同遍历方式 ● 掌握Map、HashMap集合的使用 ● 了解Map集合的常用方法 ● 理解Map集合的实现原理
实验步骤
一、Collection集合
1. 创建一个集合,装20个不同的随机数(1-100),然后将排序结果,以及排序后的倒序结果输出。 2. 源代码如下:
3. 使用Eclipse开发工具,编写上述代码,编译运行代码,查看程序执行结果。 ● 分析上述代码是如何判断列表list中是否存在元素的?若选用其他方式如何实现?
● 在TestList类中编写一个方法(方法名为ListOut),选用Iterator和增强for循环遍历方式输出列表list的元素。
二、Map集合
1. 做一个map集合,key值100以内随机十个不同的数,value值26个字母随机取,输出key值和value值。
2. 源代码如下: