[Java] 第四章 异常机制
来源:互联网 发布:网络剪刀手win7中文版 编辑:程序博客网 时间:2024/09/21 06:37
异常的概念
*1 Java异常是Java提供的用于处理程序中错误的一种机制。
*2 所谓错误是指在程序运行的过程中发生的一些异常事件(如:除0溢出,数组越界,文件不存在等)
*3 设计良好的程序应该在异常发生时提供处理这些错误的方法,使得程序不会因为异常的发生而阻断或产生不可预见的结果。
*4 Java程序的执行过程中如出现异常事件,可以生成一个异常类对象,该异常类对象封装了异常事件的信息并将被提交给Java运行时系统,这个过程称为抛出(throw)异常了。(会被打印出来,默认的处理方式)
*5 当Java运行时系统接收到异常对象时,会寻找能处理这一异常的代码并把当前异常对象交给其处理,这一过程称为捕获(catch)异常。
*1 Java异常是Java提供的用于处理程序中错误的一种机制。
*2 所谓错误是指在程序运行的过程中发生的一些异常事件(如:除0溢出,数组越界,文件不存在等)
*3 设计良好的程序应该在异常发生时提供处理这些错误的方法,使得程序不会因为异常的发生而阻断或产生不可预见的结果。
*4 Java程序的执行过程中如出现异常事件,可以生成一个异常类对象,该异常类对象封装了异常事件的信息并将被提交给Java运行时系统,这个过程称为抛出(throw)异常了。(会被打印出来,默认的处理方式)
*5 当Java运行时系统接收到异常对象时,会寻找能处理这一异常的代码并把当前异常对象交给其处理,这一过程称为捕获(catch)异常。
package com.bjsxt.chap4;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.IOException;import javax.imageio.IIOException;public class TestTx { public static void main(String[] args) { int[] arr = {1, 2, 3}; System.out.println(arr[2]); try { System.out.println(2/0); } catch (ArithmeticException e) { System.out.println("系统正在维护中, 请联系管理员"); e.printStackTrace(); } //TestTx te = new TestTx(); //te.m(0); try { new TestTx().m(0); } catch (ArithmeticException ae) { ae.printStackTrace(); System.out.println("出错了"); } FileInputStream in = null; try { in = new FileInputStream("myfile.txt"); int b; b = in.read(); while (b != -1) { System.out.println((char)b); b = in.read(); } } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { System.out.println(e.getMessage()); } finally { try { in.close(); } catch (IOException e) { e.printStackTrace(); } } } void m(int i) throws ArithmeticException { if (i == 0) { throw new ArithmeticException("被除数为0"); } }}
**** 第四章 异常处理 ***** Java 异常是 Java 提供的用于处理程序中错误的一种机制。(“运行期”) java.lang....Exceptions 写程序有问题要有友好界面 医生开单子 { 1, 鼻腔内感觉异常 2, 体温持续升高 3, 分泌乳白色液体 直接说感冒不就得了么? } e.printStackTrace(); 非常好!给程序员读。堆栈信息都打印出来! java.lang.Throwable { 开车在上山走, 1, Error 山爆发 JVM 出问题。 2, Exception { 你可以处理的 -- 刹车坏啦!修好再走。。。 1, ... 2, RuntimeException (经常出,不用逮) 压路面上的小石子 } 一个 try 可以跟多个catch 所以 { 一个茶壶可以跟多个茶碗,一个男人可以三妻四妾。} try { // 可能抛出异常的语句 语句一; 语句二; } catch(someEx e) { 语句; } catch() { 语句 } finally { // 这的无论如何都会被执行 } 一 : 打开 二 : 关闭 finally : 一般进行资源的清除工作。。。! 我处理不了的事情 : 我交给上一级部门去处理! 当时 catch 到 Ex 的时候,你至少要做出一种处理。要不那是危险的编程习惯! main() 抛出 就是交给 java 运行时系统啦! 它会把堆栈信息打出来! 一个图 : 五个关键字 { try, catch, finally, throw, throws } 一点问题 { 先逮大的,后逮小的,报错。 } 使用自定义异常 程序中可以使用 throw - 方法后 throws 如果throw抛出异常之后,方法就结束啦! 注意 : 重写方法需要抛出与原方法所抛出异常类型一致异常或不抛出异常。 * 总结 :{ * 一个图 * 五个关键字 * 先逮小的,再逮大的。 * 异常与重写的关系 }
- [Java] 第四章 异常机制
- java:Java入门第三季第四课:异常处理机制
- (完)learn python第四章:异常处理机制和文件(第一节:异常处理机制)
- learn python第四章:异常处理机制和文件夹(第二节:异常处理机制)
- Java 学习 第四章 我们来找错-Java异常处理
- 【Java】 第四章 异常处理 Notes learn Ma
- 第四章 Java的I/O流和异常处理
- java异常机制分析
- Java异常机制
- java异常机制
- java异常机制介绍
- 深入java异常机制
- java异常处理机制
- java异常处理机制
- 深入java异常机制
- Java异常机制,转载
- Java 异常机制
- Java异常机制
- C++中相对路径与绝对路径以及斜杠与反斜杠的区别
- android 访问 webservice 获取信息
- s2e符号执行的切换-1
- pentaho项目中报错java.lang.NoClassDefFoundError: javax/servlet/ServletContextListener
- 设计模式之状态机模式
- [Java] 第四章 异常机制
- java学习之路---正则表达式---学习笔记
- 求三角形面积
- JS settimeout 解析
- HBase Compaction
- JSF select One/Many
- struts2文件上传与下载
- 5.MIL中视频加载、播放和保存
- Sort List (大的还没跑通)