您好,欢迎来到小奈知识网。
搜索
您的当前位置:首页正文

实验三 Java异常处理

来源:小奈知识网
实验三 Java异常处理

一、 实验目的

1)掌握Java异常的概念及工作机制 2)掌握异常的分类

3)掌握抛出异常语句的使用(throw)

4)掌握抛出捕获处理异常语句的使用(try…catch…finally) 5)掌握上抛异常语句的使用(throws) 6)掌握创建自定义异常

二、实验内容

自定义一个异常类,求两个数的最大公约数。 三、实验步骤

1)声明一个类,继承与Exception,用来处理求公约数时被除数小

于除数抛出异常。

2)声明一个方法来求公约数。

3)在主方法里通过控制台输入二个人数并把求公约数的方法写在

try{}中,catch{}填写出现的自定义的异常及ArithmeticException异常。

四、实现代码

import java.util.Scanner;

class MyException extends Exception {

int m,n;

public MyException(int m,int n) {

this.m=m; this.n=n; }

public void process() {

System.out.println(\"被除数小于除数! }

}

public class divisor{ int m,n;

public divisor(int m,int n) {

this.m=m;

this.n=n;

}

public int div() throws MyException { int tmp;

\"); if(mwhile(m%n!=0) { m=n; n=m%n; } return n; }

public static void main(String[] args) {

Scanner in=new Scanner(System.in); int m=in.nextInt(); int n=in.nextInt(); divisor d=new divisor(m,n);

try { if(mthrow new MyException(m,n);

int result=d.div(); System.out.println(result); }

catch(ArithmeticException e) {

e.printStackTrace(); }

catch(MyException e) {

e.process(); } } } 五、实验小结

1)在求公约数时既可以采用求余运算,也采用二者做减法运算,

其后者的执行时间短效率高。不管采用何种方法,最终得到的结果都是一样。

2)理解异常是如何捕获以及抛出的,但对整体的异常理

解并不透彻,比如有没有一种异常定义是,定义所有的异常内,然后在通过各种异常判断把最终的异常确定下来。

3)如果我们想在出现异常中断的时候,执行异常后面的代码,

则要实现的代码应该放在Finally{}。当然Finally的代码不是一定会执行。碰到了强制退出时则Finally中程序段也不会执行。

因篇幅问题不能全部显示,请点此查看更多更全内容

Top