有一个类为ClassA,有一个类为ClassB,在ClassB中有一个方法b,此方法抛出异常,在ClassA类中有一个方法a,请在这个方法中调用b,然后抛出异常。在客户端有一个类为TestC,有一个方
2015-08-21 17:07
309 查看
有一个类为ClassA,有一个类为ClassB,在ClassB中有一个方法b,此方法抛出异常,在ClassA类中有一个方法a,请在这个方法中调用b,然后抛出异常。在客户端有一个类为TestC,有一个方法为c ,请在这个方法中捕捉异常的信息。完成这个例子,请说出java中针对异常的处理机制。
package com.itheima; import java.io.IOException; /** *第6题:有一个类为ClassA,有一个类为ClassB,在ClassB中有一个方法b, *此方法抛出异常,在ClassA类中有一个方法a,请在这个方法中调用b,然后抛出异常。 *在客户端有一个类为TestC,有一个方法为c ,请在这个方法中捕捉异常的信息。 *完成这个例子,请说出java中针对异常的处理机制。 * *java中的异常分为“运行时异常”和“编译时异常” *运行时异常:是程序在运行的过程中所产生的异常,这个不是必须处理,是我们需要修正的 *编译时异常:是程序在编译的过程中所产生的异常,这个我们必须处理 *在java程序中,异常处理机制有两种,一种是“抛出异常”,一种是“捕获异常”,一种是“默认出来” *默认处理,他会把异常的名称,原因,位置等信息输出在控制台,但程序不会继续执行了 *抛出异常:使用的关键字throws throw * throws 用于在声明方法时抛出异常,只能是一个异常 * throw 用于抛出一个实际的异常,抛出一个具体异常对象,可以是多个异常。 *捕获异常:try....catch...finally * try{代码块} * 中间包含的代码块是可能出现异常的代码。 * catch{代码块} * 这个代码块是用来处理异常的代码 * finally{代码块} * 这个是异常处理后所需要执行的代码块。这个里面的代码块他总是会被执行,用于释放资源 *注意:try不能单独使用,必须和catch或者finally两个中的一个一起使用 */ public class Test6 { public static void main(String[] args) throws Exception { // 创建tc对象 TestC tc = new TestC(); // 使用tc调用c方法,运行这个类 tc.c(); // A a = new A(); // a.a(); } } //A类 class A{ // 创建一个a方法,在a方法中创建b对象,通过b对象调用b方法,因为b对象抛出了异常,所以在a方法中也要抛出异常 public void a() throws Exception{ B b = new B(); b.b(); } } //B类 class B { // 创建一个b方法,并抛出异常 public void b() throws Exception{ System.out.println("我是B类中的b方法,我抛出异常!"); } } //客户端类 class TestC{ public void c() { // 创建一个A对象 A a = new A(); // 调用A对象中的a方法,此时因为A方法中抛出了异常,所以这了必须处理,使用try...catch处理 try { a.a(); } catch (Exception e) { // TODO Auto-generated catch block System.out.println("我是捕获异常方法,"+e.toString()); } } }
相关文章推荐
- iOS做透明引导页
- 最大似然估计学习总结
- JS 移动动画
- Android TextView 一些字体颜色、大小设置属性
- android 点击拨打电话发短信
- 实现带清除效果的EditText
- Ubuntu下FFmpeg-Android-master编译过程
- requirejs 同过hack改变文件映射
- 自定义字符输入流的包装类,通过这个包装类对底层字符输入流进行包装,让程序通过这个包装类读取某个文本文件(例如,一个java源文件)时,能够在读取的每行前面都加上有行号和冒号。
- 高效团队的基础:
- Android错误汇总集锦
- Android 5.0 如何修改指定sim卡拨号
- 厦门大学线下编程比赛第一题:求和
- C/C++易错难点笔记02
- 汉诺塔问题
- php文件上传
- Orchard编写网上商店模块2
- ANDROID定义自己的看法——onMeasure,MeasureSpec源代码 过程 思考具体解释
- 一个java实现的简单的4则运算器
- <img src="">标签中的src 找不到 Servlet的路径