内容发布更新时间 : 2024/11/10 2:18:23星期一 下面是文章的全部内容请认真阅读。
信 息 工 程 学 院1
《Java语言程序设计》实验报告
学院:信息学院
班级:************
姓名:pprp
学号:*********** 成绩:
一、实习目标
(1)掌握Java的异常处理机制及相关实现方法;
(2)掌握常用实用类的使用,熟悉使用JDK_API进行软件开发; (3)掌握Java中正则表达式的基本用法。
二、实验过程
实验题1 try-catch练习:
在程序中产生三个异常:
1.ArithmeticException 类型被0除的异常; 2.NullPointerException空指针异常;
3.ArryIndexOutOfBoundsException数组下标越界异常。
并用catch 语句捕获这些异常。捕获到异常后在catch代码段中分别调用异常对象的方法对三个异常进行处理。第一个异常对象调用getMessage()方法并输出、第二个异常对象调用toString()方法并输出、第三个对象调用printStackTrace()并输出,结合jdk_api,说明这三个方法的区别。 题目理解及解释:
(1)Java_API 中关于getMessage()的说明:返回此 Throwable或Exception 的详细消息字符串。在除0的时候返回了Infinity,如果是负数除0返回-Infinity (2)Java_API 中关于toString()的说明:
对象利用 null 详细消息字符串创建,则返回此对象的实际类的名称
public String toString()返回此 throwable 的简短描述。结果是以下字符串的串联: 此对象的类的 name \(冒号和一个空格) 调用此对象 getLocalizedMessage() 方法的结果 覆盖:
类 Object 中的 toString 返回:
该 throwable 的字符串表示形式。 实验报告的内容与格式按任课教师的要求书写。
(3)Java_API 中关于printStackTrace()的说明: public void printStackTrace()
可以将错误详细的信息追踪到代码中具体某行,出错相关的行数。
将此 throwable 及其追踪输出至标准错误流。此方法将此 Throwable 对象的堆栈跟踪输出至错误输出流,作为字段 System.err 的值。输出的第一行包含此对象的 toString() 方法的结果。剩余行表示以前由方法 fillInStackTrace() 记录的数据。 getMessage() Throwable或Exception 的详细消息字符串 toString() 返回此 throwable 的简短描述 printStackTrace() 将此 throwable 及其追踪输出至标准错误流 代码截图:
运行结果截图:
实验题2 用户自定义异常:
编写一个程序,输入一个班某门课程成绩,统计平均分。当输入的成绩小0分或大于100分时,抛出异常,程序捕捉这个异常,并作出相应处理。
1.定义一个异常类ScoreException,让其继承异常类Exception;
2.写一个StasticScore类,为其添加静态方法stastic( ),通过标准输入(System.in)接收班级人数以及每一个int类型成绩。当输入的成绩小0分或大于100分时,抛出异常,异常参数message为:“输入的成绩不合法,请重新输入”;
3.输出平均成绩,保留1位小数(章节8.8内容) 4.在主类ExceptionTest的main()方法中进行测试。
代码说明及理解:
用户自定义异常类,一个方法在声明的时候可以使用throws关键字声明要产生的若干异常,并在方法体中给出长城异常的操作。必须用到相应的异常类创建对象,并使用throws关键字抛出该异常对象,使得该方法结束执行。必须自try-catch块中调用可能发生的错误,catch的作用就是捕获throw关键字抛出的异常对象。
还用到了String.format()与printf的相关格式差不多。