JAVA学习笔记(第八章异常处理)

来源:互联网 发布:淘宝图片护盾哪里 编辑:程序博客网 时间:2024/05/18 23:27

目前主流的编程语言:Java,C#,Ruby,Python等都有了异常处理的机制。

  java的异常处理机制主要依赖于try,catch,finally,throw,和throws五个关键字。

try块后放置异常代码,catch后跟一个finally块。

1.异常描述

      异常处理已经成为衡量一门语言是否成熟的标准之一。java的两种异常:Checked异常和Runtime异常,前者在编译时就被处理,后者是在运行阶段进行处理的。增加了异常处理机制。从Java异常处理中得到的哲学启发,很多事情是你所无法保证的,必须在运行的过程中解决。java的异常处理机制就可以解决这个问题。

8.2异常处理机制

实现将业务功能代码和错误处理代码相分离,以提供更好的可读性。

8.2.1使用try。。。catch捕获异常 

try{

//业务实现代码

}catch(Exception e)

{alter 输入不合法 

gotoretry

}

try中定义,catch块中进行处理。 生成一个异常对象交给java运行时环境,这个过程被称为抛出异常。

异常对象交给catch块处理,该过程称为捕获异常。catch块。如果没有为这段代码定义任何的catch块,那么程序在发生异常时就会自动退出。

遇到异常,跳入到catch块中执行异常处理的代码。

8.2.2异常类的继承体系 

catch(){}判断异常对象是否是catch块后的异常类或者其子类的实例,若是则调用该catch()块,否则再次拿该异常对象和下一个catch块里的异常类进行比较。

try{

}

catch(ExceptionClass1 e1){}

catch(ExceptionClass2 e2){}

try后有多个catch块,针对不同的异常类提供不同的异常处理方式,根据异常对象所属的异常类来决定使用哪个catch块来处理异常。

未来可遇见,不可预见

提供更细致更有条理的处理逻辑。try块内的变量是局部变量,只在try块内有效。丰富的异常类,严格的继承关系。

一旦用throws抛出异常之后,就不用在catch块中捕获了。
checked 异常和runtime异常。

8.4

java允许程序自动抛出异常,自动抛出异常使用throw语句来完成。使用try·catch来捕捉该异常。

自定义异常类,catch异常和throw同时使用 

用到了再看再理解吧!

0 0
原创粉丝点击