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

实验六 Java异常

实验目的

1、理解异常的基本概念;
2、掌握异常处理方法及熟悉常见异常的捕获方法。

实验要求

1、练习捕获异常、声明异常、抛出异常的方法、熟悉try和catch子句的使用。
2、掌握自定义异常类的方法。

实验内容

一、编写一个类,在其main()方法中创建一个一维数组,在try字句中访问数组元素,使其产生ArrayIndexOutOfBoundsException异常。
在catch子句里捕获此异常对象,并且打印“数组越界”信息,加一个finally子句,打印一条信息以证明这里确实得到了执行。

实验代码

package test;

public class Abnormal {

    public static void main (String args[]) {
        int s[] = null;
        s = new int[3];

        try{
            int a = s[3];
        }
        catch(ArrayIndexOutOfBoundsException aio){
        System.out.println("数组越界");
        }finally {
            System.out.println("证明finally得到执行");
        }
    }
}


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

实验代码

package test;

public class DangerException extends Exception{
    String m;
    public DangerException() {
        m = "危险物品";
    }

    public void toShow() {
        System.out.println(m);
    }

}

package test;

public class Machine {

    public Machine() {
        // TODO 自动生成的构造函数存根
    }
    public void checkBag(Goods goods) throws DangerException{
        if(goods.isDanger() == true) {
            DangerException danger = new DangerException();
            throw new DangerException();
        }
        else {
            System.out.println(goods.getName()+"不是危险物品");
        }
    }

}

package test;

public class Goods {
    private String name;
    private boolean isDanger;

    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public boolean isDanger() {
        return isDanger;
    }
    public void setDanger(boolean isDanger) {
        this.isDanger = isDanger;
    }

}

原文地址:https://www.cnblogs.com/20188382llz/p/11699698.html

时间: 2024-08-30 14:24:30

第八周课程总结&实验报告的相关文章

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

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

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

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

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

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

第五周课程总结&实验报告

第五周课程总结&实验报告 实验三 String类的应用 实验目的 掌握类String类的使用: 学会使用JDK帮助文档: 实验内容 1.已知字符串:"this is a test of java".按要求执行以下操作:(要求源代码.结果截图.) 统计该字符串中字母s出现的次数. 统计该字符串中子串"is"出现的次数. 统计该字符串中单词"is"出现的次数. 实现该字符串的倒序输出. 2.请编写一个程序,使用下述算法加密或解密用户输入的英文

第三周课程总结&实验报告(一)

撰写第三周课程总结及实验报告(一) 1.打印输出所有的"水仙花数",所谓"水仙花数"是指一个3位数,其中各位数字立方和等于该数本身.例如,153是一个"水仙花数" 2. 编写Java程序,求13-23+33-43+-+973-983+993-1003的值. 3. 编程求1!+2!+3!+-+20! 4. 编写Java程序,计算8+88+888+-前10项之和. 5. 一个数如果恰好等于它的因子之和,这个数就称为完数.编写程序输出1000以内的所有

Java第三周课程总结&实验报告一

第三周课程总结 1.关于面向对象的一些具体内容,明白了类与对象以及Java的封装性和构造方法以及对对象匿名的相关知识. 2.this关键字,它是表示类的成员属性(变量),使用this构造方法时必须放在首行,不能够循环调用,this只表示当前对象. 3.static关键字,使用static声明属性能够使对象属性共享,用static声明方法能够让类名称直接被调用,即静态方法. 4.main方法,必须定义为public static void main(String args[]),以及学习了main

第五周课程总结&实验报告(三)

实验三 String类的应用 实验目的: (1)掌握类String类的使用: (2)学会使用JDK帮助文档: 实验内容: 1.已知字符串:"this is a test of java".按要求执行以下操作: (1)统计该字符串中字母s出现的次数. (2)统计该字符串中子串"is"出现的次数. (3)统计该字符串中单词"is"出现的次数. (4)实现该字符串的倒序输出. 实验代码: package project2; public class t

第八周学习总结&实验报告(6)

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

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

实验报告(四) 一.实验目的 1.掌握类的继承 2.变量的继承和覆盖,方法的继承,重载和覆盖的实现 二.实验的内容 1.根据下面的要求实现圆类Circle. 圆类Circle的成员变量:radius表示圆的半径. 圆类Circle的方法成员: Circle():构造方法,将半径置0 Circle(double r):构造方法,创建Circle对象时将半径初始化为r double getRadius():获得圆的半径值 double getPerimeter():获得圆的周长 void disp(