运行时环境自动抛出系统生成的异常,而不管你是否愿意捕获和处理,它总要被抛出!比如除数为的异常。二是程序员自己抛出的异常,这个异常可以是程序员自己定义的,也可以是

异常是针对方法来说的,抛出、声明抛出、捕获和处理异常都是在方法中进行的。

Java异常处理通过5个关键字try、catch、throw、throws、finally进行管理。基本过程是用try语句块包住要监视的语句,如果在try语句块内出现异常,则异常会被抛出,你的代码在catch语句块中可以捕获到这个异常并做处理;还有以部分系统生成的异常在Java运行时自动抛出。你也可以通过throws关键字在方法上声明该方法要抛出异常,然后在方法内部通过throw抛出异常对象。finally语句块会在方法执行return之前执行,一般结构如下:

四、请先阅读EmbedFinally.java示例,再运行它,观察其输出并进行总结。

当有多层嵌套的finally时,异常在不同的层次抛出,在不同的位置抛出,可能会导致不同的finally语句块执行顺序。

当程序中出现异常时,JVM会依据方法调用顺序依次查找有关的错误处理程序。

每个Throwable类的对象都有一个getMessage方法,它返回一个字串,这个字串是在Exception构造函数中传入的,通常让这一字串包含特定异常的相关信息。

请通过PrintExpressionStack.java示例掌握上述内容。依据对本讲多个示例程序的分析,请自行归纳总结出Java多层嵌套异常处理的基本流程。

一个子类的throws子句抛出的异常,不能是其基类同名方法抛出的异常对象的父类。

//如果test方法声明抛出了比父类方法更大的异常,比如Exception

六、编写一个程序,此程序在运行时要求用户输入一个整数,代表某门课的考试成绩,程序接着给出“不及格”、“及格”、“中”、“良”、“优”的结论。

·网页开发之NodeJS 将文件夹按照存放路径变成一个对应的JSON的方法学习

·Java语言中与时间有关的类Date,DateFormat,Calendar学习–Java编程

java学习网部分内容来自网络或网友发布,如侵犯了您利益,请发邮件至:,我们尽快处理!

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注