第八周课程总结&实验报告(六)

课程总结:

本周主要学习 1.异常的捕获及处理,了解了异常是导致程序中断的一种指令流,异常处理的语句格式,在try语句中写出可能出现异常的语句,如果try语句中产生了异常,则程序会自动跳转的catch语句中找到匹配的异常类型进行相应的处理,而finally语句是异常的统一出口,finally后面的语句是一定会执行的。

2.throw与throws关键字

 

1、Throw用于方法内部,Throws用于方法声明上

 

2、Throw后跟异常对象,Throws后跟异常类型

 

3、Throw后只能跟一个异常对象,Throws后可以一次声明多种异常类型
 
3.exception类与runtimeexception类
1、exception在程序中必须要使用try...catch进行处理,而runtimeexception可以不使用,如果出现异常,则将由JVM进行处理
2、runtimeexception是exception的子类
 
实验报告

实验六 Java异常

  • 实验目的
  • 理解异常的基本概念;
  • 掌握异常处理方法及熟悉常见异常的捕获方法。
  • 实验要求
  • 练习捕获异常、声明异常、抛出异常的方法、熟悉try和catch子句的使用。
  • 掌握自定义异常类的方法。

 

  .实验内容(一):

  • 编写一个类,在其main()方法中创建一个一维数组,在try字句中访问数组元素,使其产生ArrayIndexOutOfBoundsException异常。在catch子句里捕获此异常对象,并且打印“数组越界”信息,加一个finally子句,打印一条信息以证明这里确实得到了执行。
  • 实验内容(二)
  • 自定义异常类的使用
  • 车站检查危险品的设备,如果发现危险品会发出警告。编程模拟设备发现危险品。

    技术方案:

    编写一个Exgeption的子类DangerException,该子类可以创建异常对象,该异常对象调用toShow()方法输出“危险物品”。编写一个Machine类,该类的方法checkBag(Goods goods)当发现参数goods是危险品时(goods的isDanger属性是true)将抛出DangerException异常。
    程序在主类的main()方法中的try-catch语句的try部分让Machine类的实例调用checkBag(Goods goods)的方法,如果发现危险品就在try-catch语句的catch部分处理危险品。

  • 这个题老师上课时讲过了,上课的时候主要是没认真听,当时觉得还好,后面自己动手时就完全不知道怎么动手了,后面问了同学,参考他的代码之后才理清了一些思路,但还是有很多地方没弄懂。