创建一个方法,实现两个除数相除。并利用try catch多个异常进行异常处理

实验三异常处理;一、实验目的;1.学会利用Try-catch-finally语;2.掌握自定义异常类的方法;二、实验要求;通过编程理解系统异常处理的机制和创建自定义异常的;三、实验内容;1.编写使用try?catch语句处理异常的程序;SY4_1.java,源代码如下:;publicclassSY4_1{;publicstaticvoidmain(Str;S
实验三 异常处理
一、实验目的
1. 学会利用Try-catch-finally语句来捕获和处理异常;
2. 掌握自定义异常类的方法。
二、实验要求
通过编程理解系统异常处理的机制和创建自定义异常的方法。
三、实验内容
编写使用 try?catch 语句处理异常的程序文件
SY4_1.java,源代码如下:
public class SY4_1{
public static void main(String[] arg3) {
System.out.println(&这是一个异常处理的例子\n&);
catch (ArithmeticException e) {
System.out.println(&异常是:&+e.getMessage());
System.out.println(&finally 语句被执行&);
编译并运行程序。
注意:如果在 catch 语句中声明的异常类是 Exception,catch 语句也能正确地捕获,这是因为
Exception是ArithmeticException的父类。如果不能确定会发生哪种情况的异常,那么最好指定catch的参数为 Exception,即说明异常的类型为 Exception。
2.编写SY4_2.java 程序,计算两数相除并输出结果。使用两个catch子句,分别捕捉除数为0的异常和参数输入有误异常。源代码如下:
java.io.*;
main(String
BufferedReader
BufferedReader(new
InputStreamReader(System.in));
System.out.print(&请输入除数:&); String
cl=strin .readLine();
a=Integer .parseInt(cl); System .out .print(&请输入被除数:&); cl=strin .readLine(); int
b=Integer .parseInt(cl); int
c=b/a; System .out .println(&商为:&+c);
//捕获与I/O有关的异常
catch(IOException
e){e.printStackTrace();}
//捕获数值转化时的异常,如不能将字符转化成数值
catch(NumberFormatException
System.out.println(&请输入整数!&);
//e .printStackTrace();
//捕获除数为0的异常
catch(ArithmeticException
System .out .println(&除数不可以0!&);
//e .printstackTrace();
编译并运行,当输入除数为0时,将有异常出现,当输入的不是整数时,如将30输成了3o,出现的是另一种异常。
3.编写程序SY4_3.java,包含自定义异常,当输入数值为13和4时抛出该异常。源代码如下:
class Ex2 extends Exception{
Ex2 (String msg) {
super(msg);
class SY4_3{
void setX(int x) {
void f1() throws Ex2{
throw new Ex2(“I don’t like 13!”);
else if(x==4)
throw new Ex2(“I don’t like 4!”);
system .out.println(100/x);
public static void main(Sstring args[ ]) {
SY4_3 a=new SY4_3();
a.steX(5);
//a.setX(13);
//a.setX(4);
//a.setX(0);
catch(Ex e) {
Sytem.out.println(“get message:”+e.getMessage());
编译并运行,分别取消注释上面程序中被注释的语句。当释放a.setX(13)语句后,查看运行结果,当释放a.setX(4)语句后,查看运行结果。
四、实验练习题
1.编写Java程序,创建数组后,对数组访问时发生的数组越界.实验使用
try-catch语句处理该异常。运行结果如图所示。
2.自定义一个异常,并将其抛出,异常信息为“这是自定义异常!”。
包含各类专业文献、各类资格考试、生活休闲娱乐、高等教育、幼儿教育、小学教育、应用写作文书、实验三 异常处理07等内容。 
 实验三 异常处理_计算机软件及应用_IT/计算机_专业资料。实验三异常 处理一、实验目的 1. 学会利用 Try-catch-finally 语句来捕获和处理异常; 2 . 掌握自定义...  Java实验报告3-异常处理_计算机软件及应用_IT/计算机_专业资料。Java,异常处理,计算机,软件开发 实验报告 课程名称: Java 语言程序设计 院 (系) : 管理学院 专业...  扩充上题,创建“取款数目超过余额”这个异常,并在取款方法中抛出并处理这个异常。隐藏&& Java 上机实验报告(实验三:异常处理) 上机实验报告(实验三:异常处理) ...  实验三 异常处理和基础类库_计算机软件及应用_IT/计算机_专业资料 暂无评价|0人阅读|0次下载|举报文档 实验三 异常处理和基础类库_计算机软件及应用_IT/计算机_...  C++实验报告(异常处理)_计算机软件及应用_IT/计算机_专业资料。实验三 计算三角形面积中的异常处理一、实验目的 1.了解 C++异常处理机制 二、实验环境 Windows + ...  课程实验报告 实验三:磁异常处理与转换一、实验目的: 1、加深对磁性体磁异常在空间域处理转换原理与作用的认识 2、用 Matlab 语言编程实现水平圆柱体磁异常(包括 ...  JAVA 语言程序设计 实验报告实验三 实验题目: 异常处理 指导老师: 卢照 专业班级:计算机科学与技术系 1106 班姓名:李锋() 2014 年 4 月 20 日 一、...  班级: 12 计师本
成绩 姓名: 陈翠玲 学号: 异常 实验目的: 1. 理解异常现象及异常的抛出机制 2. 掌握异常抛出时的处理机制 3. 掌握自定义异常的方...  实验三 内部类、常用类及异常类的用法 1.实验目的(1)掌握 Java 中内部类的...成绩小于 0 分或大于 100 分时,抛出异常,程序将捕捉这个异常,并作出相应处理。...两个数相除的商是20,如果除数不变,被除数除以4,商也随之缩小4倍,是20÷4=5;
菁优解析考点:.专题:探索数的规律.分析:根据商的变化规律,被除数不变,除数数扩大(或缩小)几倍(0除外),则商缩小(或扩大)相同的倍数;除数不变,被除数扩大或缩小几倍(0除外),则商也随之扩大(或缩小)相同的倍数;据此解答.解答:解:两个数相除商是20,如除数不变,被除数除以4,则商缩小4倍,是:20÷4=5;答:商是5.点评:明确商的变化规律,是解答此题的关键.答题:春暖花开老师 
其它回答(5条)
a÷b=20a=20b20b÷b=20即:20b÷4÷b=5b÷b=5
在除法算式中,除数不变,被除数缩小(或扩大)n倍,商也会缩小(或扩大)相同倍数,因此,这道题的商应该是5
&&&&,V2.26488异常处理 C语言中的异常处理
05:51:35来源: 网络整理
一 前言:异常处理,对于做面向对象开发的开发者来说是再熟悉不过了,例如在C#中有try{&&&&...}catch( Exception e){...}finally{.....}在C++中,我们常常会使用try{}...catch(){}块来进行异常处理。[)说了那么多,那么到底什么是异常处理呢?异常处理(又称为错误处理)功能提供了处理程序运行时出现的任何意外或异常情况的方法。异常处理一般有两种模型,一种是"终止模型",一种是"恢复模型""终止模型":在这种模型中,将假设错误非常关键,将以致于程序无法返回到异常发生的地方继续执行.一旦异常被抛出,就表明错误已无法挽回,也不能回来继续执行."恢复模型":异常处理程序的工作是修正错误,然后重新尝试调动出问题的方法,并认为的二次能成功. 对于恢复模型,通常希望异常被处理之后能继续执行程序.在这种情况下,抛出异常更像是对方法的调用--可以在Java里用这种方法进行配置,以得到类似恢复的行为.(也就是说,不是抛出异常,而是调用方法修正错误.)或者,把try块放在while循环里,这样就可以不断的进入try块,直到得到满意的结果.二 面向对象中的异常处理大致了解了什么是异常处理后,由于异常处理在面向对象语言中使用的比较普遍,我们就先以C++为例,做一个关于异常处理的简单例子:问题:求两个数相除的结果。这里,隐藏这一个错误,那就是当除数为0时,会出现,所以,我们得使用异常处理来捕捉这个异常,并抛出异常信息。具体看代码:&1&#include&&iostream&&2&#include&&exception&&3&using&namespace&&4&class&DivideError:public&exception&5&{&6&&public:&7&&&&&&&&&&&DivideError::DivideError():exception(){}&&8&&&&&&&&&&const&char*&what(){&9&&&&&&&&&&&&&return&"试图去除一个值为0的数字";10&&&&&&&&&}11&12&};13&double&quotion(int&numerator,int&denominator)14&{15&&&&&if(0==denominator)&&&&&&&&&&//当除数为0时,抛出异常&16&&&&&throw&DivideError();17&&&&&return&static_cast&double&(numerator)/&&&&18&}19&int&main()20&{21&&&&&int&number1;&&&&&&&&&&&&&//第一个数字22&&&&&int&number2;&&&&&&&&&&&&&//第二个数字23&&&&&double&24&&&&&cout&&"请输入两个数字:"&;25&&&&&while(cin&&number1&&number2){26&&&&&&&&&try{27&&&&&&&&&&&&&result=quotion(number1,number2);28&&&&&&&&&&&&&cout&&"结果是&:"&&result&&29&&&&&&&&&&&&&30&&&&&&&&&}&&&&&//end&try31&&&&&&&&&catch(DivideError&&divException){32&&&&&&&&&&&&&cout&&"产生异常:"33&&&&&&&&&&&&&&&&&&&divException.what()&&34&&&&&&&&&}35&&&&&}36&&&&&37&}38&在这个例子中,我们使用了&expection&头文件中的exception类,并使DivideError类继承了它,同时重载了虚方法what(),以给出特定的异常信息。而C#中的异常处理类则封装的更有全面,里面封装了常用的异常处理信息,这里就不多说了。三 C语言中的异常处理&在C语言中异常处理一般有这么几种方式:1.使用标准C库提供了abort()和exit()两个函数,它们可以强行终止程序的运行,其声明处于&stdlib.h&头文件中。2.使用assert(断言)宏调用,位于头文件&assert.h&中,当程序出错时,就会引发一个abort()。3.使用errno全局变量,由C运行时库函数提供,位于头文件&errno.h&中。4.使用goto语句,当出错时跳转。5.使用setjmp,longjmp进行异常处理。接下来,我们就依次对这几种方式来看看到底是怎么做的:我们仍旧以前面处理除数为0的异常为例子。1.使用exit()函数进行异常终止:&1&#include&&stdio.h&&2&#include&&stdlib.h&
评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)java(33)
8.编写一个除法计算器,程序具有try-catch-finally结构,程序要求用户输入除数和被除数,在出现除数为零(异常2)和除数、被除数中有一个不是数字(异常1)的情况时进行相应的处理。当调用存放在数组中的计算结果,数组有可能产生索引越界(异常3),对这种情况进行捕捉和处理。
import java.util.InputMismatchE
import java.util.S
public class Divider {
public static void main(String[] args) {
int result[] = { 0, 1, 2 };
int oper1 = 0;
int oper2 = 0;
Scanner in = new Scanner(System.in);
System.out.print(&请输入除数:&);
oper1 = in.nextInt();
System.out.print(&请输入被除数:&);
oper2 = in.nextInt();
result[2] = oper2 / oper1;
System.out.println(&计算结果:& + result[3]);
} catch (InputMismatchException e1) {
System.out.println(&异常1:输入不为数字!&);
} catch (ArithmeticException e2) {
System.out.println(&异常2:除数不能为零!&);
} catch (ArrayIndexOutOfBoundsException e3) {
System.out.println(&异常3:数组索引越界!&);
} catch (Exception e4) {
System.out.println(&其他异常4:& + e4.getMessage());
} finally {
System.out.println(&最后要执行的内容5!&);
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:25438次
排名:千里之外
原创:66篇
(1)(2)(20)(6)(37)(2)

我要回帖

更多关于 try catch 捕获异常 的文章

 

随机推荐