第八周课程学习总结与实验6

实验六 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部分处理危险品。

1.实验代码:

package test;

public class 测试异常 {
    public static void main(String args[]) {
        System.out.println("-------异常测试-------");
        int []a = null;
        try {
            String str1=args[1];
            String str2=args[0];
            a[0]=Integer.parseInt(str1);
            a[1]=Integer.parseInt(str2);
            int temp=a[0]/a[1];
            System.out.println("两个数字相除结果:"+temp);
            System.out.println("--------------");
        }catch(ArrayIndexOutOfBoundsException e) {
            System.out.println("数组越界异常:"+e);
        }finally {
            System.out.println("异常测试一定执行");
        }
    }
}

实验截图.

2.实验代码:

package DangerException;

public class DangerException extends Exception {
    public void toShow() {
        System.err.print("属于危险物品");
    }

}

class Goods{
        private boolean Danger;
        private String name;
        public Object getName;
        public Goods(boolean Danger,String name) {
            this.Danger=Danger;
this.name=name;
        }
        public boolean Danger() {
            return Danger;
        }
        public void setName(String name) {
            this.name=name;
        }
        public String getName() {
            return name;
        }

}
    class Machine{
        public void checkBag(Goods goods)throws DangerException{
            if(goods.Danger())
                throw new DangerException();
            else
                System.out.println(goods.getName()+"不是危险品");
        }

}
package DangerException;

public class Test {
    public static void main(String[] args){
        Machine mac=new Machine();
        Goods goods=new Goods(false, null);
        String a[]={"枪","刀具","包 " ,"手机"};
        for(int i=0;i<a.length;i++) {
            goods.setName(a[i]);
            if(a[i].equals("枪")||a[i].equals("刀具")) {
                goods.Danger();
                System.out.println(a[i]+"是危险品");
            }
            else
                goods.Danger();
        }

try {
            mac.checkBag(goods);
        }catch(DangerException e) {
            e.toShow();
        }
   
    }

}

2.实验截图

学习总结:

1.本周主要讲了异常类的运用,

2.了解了基本的try{}catch{}finally{}用法.

3.学会了try-catch方法运用.

4.还稍微理解了throw与throws的区别,感觉对于二者还是有点模糊.

5.需要在后续的学习中加油认真巩固与学新.

原文地址:https://www.cnblogs.com/gyyy/p/11701667.html

时间: 2024-11-11 10:30:49

第八周课程学习总结与实验6的相关文章

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

第八周课程总结 一.包装类 介绍 装箱与拆箱 应用 二.异常 基本概念 基本格式 异常类的继承结构 throws关键字 throw关键字 Exception类和RuntimeException类 自定义异常类 三.多线程 基本概念 进程 多线程 Java中线程的实现 继承Thread类 实现Runnable接口 Thread和Runnable的区别 一.包装类        1.介绍                                8种基本类型变包装类 (1)除了Character

第八周Java学习总结

一.知识点摘要 1.泛型 泛型(Generic):就是指参数化类型,上面的List就是参数化类型,因此就是泛型,而String就是该List泛型的类型参数.泛型可以使集合可以记住元素类型,即取出元素的时候无需进行强制类型转化了,可以直接用原类型的引用接收:一旦指定了性参数那么集合中元素的类型就确定了,不能添加其他类型的元素,否则会直接编译保存,这就可以避免了"不小心放入其他类型元素"的可能:上述保证了如果在编译时没有发出警告,则在运行时就一定不会产生类型转化异常(ClassCastEx

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

实验六 Java异常 实验目的 理解异常的基本概念: 掌握异常处理方法及熟悉常见异常的捕获方法. 实验要求 练习捕获异常.声明异常.抛出异常的方法.熟悉try和catch子句的使用. 掌握自定义异常类的方法. 实验内容 编写一个类,在其main()方法中创建一个一维数组,在try字句中访问数组元素,使其产生ArrayIndexOutOfBoundsException异常.在catch子句里捕获此异常对象,并且打印"数组越界"信息,加一个finally子句,打印一条信息以证明这里确实得到

第八周课程总结及实验报告

实验报告 一.编写一个类,在其main()方法中创建一个一维数组,在try字句中访问数组元素,使其产生ArrayIndexOutOfBoundsException异常.在catch子句里捕获此异常对象,并且打印"数组越界"信息,加一个finally子句,打印一条信息以证明这里确实得到了执行. 1)实验代码 package text7; public class Text7 { public static void main(String[] args) { try { int s[]=

第八周课程总结&amp;实验报告六

实验六 Java异常 实验目的 理解异常的基本概念: 掌握异常处理方法及熟悉常见异常的捕获方法. 实验要求 练习捕获异常.声明异常.抛出异常的方法.熟悉try和catch子句的使用. 掌握自定义异常类的方法. 实验内容 编写一个类,在其main()方法中创建一个一维数组,在try字句中访问数组元素,使其产生ArrayIndexOutOfBoundsException异常.在catch子句里捕获此异常对象,并且打印"数组越界"信息,加一个finally子句,打印一条信息以证明这里确实得到

第八周课程总结&amp;实验报告

实验六 Java异常 实验目的 1.理解异常的基本概念: 2.掌握异常处理方法及熟悉常见异常的捕获方法. 实验要求 1.练习捕获异常.声明异常.抛出异常的方法.熟悉try和catch子句的使用. 2.掌握自定义异常类的方法. 实验内容 一.编写一个类,在其main()方法中创建一个一维数组,在try字句中访问数组元素,使其产生ArrayIndexOutOfBoundsException异常. 在catch子句里捕获此异常对象,并且打印"数组越界"信息,加一个finally子句,打印一条

第八周c++学习情况——杨智雯

学习情况:周一的时候老师讲了上个星期没有讲完的五六章的知识,因为周末的时候已经写了这部分没有讲过的内容的作业,所以已经自己自学了,内容比较容易掌握,然后讲了一下第七章的数组的内容.周三上实验课,老师继续讲了第七章的数组,讲的内容比较详细,例子分析的很到位,学习了冒泡法和插入法,但是第七章还没有学完.老师讲的内容比较多,没有留太多的时间给我们打代码,我只完成了实验的第一题,还没有来得及看第二题,emmm现在看了看第二题好像有点苦恼emmm,如果老师能留多一点时间我就可以在课上问老师了,不过我还是先

第八周技术学习+《你是锦瑟我为流年 三毛的千山万水》简记

上周大部分都在复习,并没有太多时间看书.然而各种考试压力过来,使我依然看完了我的<你是锦瑟我为流年 三毛的千山万水>,这本书以白落梅的个人角度评点三毛的生活踪迹,她的语言带给人一种平缓心情的感受,看着减缓了我很多压力.这里的三毛并非童话故事的三毛,而是以三毛为笔名的陈懋平,她小时候与书为伴.因为学校的一些原因,生命开始与流浪纠缠.仿佛生来就是一个流浪者,所以当她踏上行程,感觉人生原来可以这么活.她再也做不了一个安静温婉的女子,对着一扇幽窗,拿一支素笔,写着单薄的心事.她需要在放逐中,感受生命的

Linux课程学习之我思

陈民禾,原创作品转载请注明出处<Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000,我的博客中有一部分是出自MOOC课程中视频,再加上一些我自己的理解. 经过八周的学习,Linux课程告一段落,在这里,对之前的学习做一个汇总,也简单说一下自己的收获与遗憾. 一.博客笔记汇总 第一周笔记    标题:计算机是这样工作的                               链接:http://www.cnblog