Java程序设计(二)异常处理机制

我们今天来谈谈java的异常处理机制

首先 我们需要回想一下 在C++中 C++的异常处理机制是怎么回事的?我们可以通过例题来回答这个问题。

从这个简单的例子中 我们可以 看出 对于C++而言 它的异常处理机制是这样的 

try{     //要检测的可能会出现错误的语句块

......................;

throw ...............//要抛出的异常类型

}

catch()   //要捕获的异常类型

{

..........................;//处理语句 

}


对于C++而言 异常机制是在try块里进行检查,在catch块里进行处理。同时需要注意的是throw语句块可以出现在任何地方(通常我们一般都在try块中抛出异常),同时需要指明抛出的异常类型,在catch块中要指定异常类型,C++才能成功的捕获以及处理异常,对于C++而言,异常类型可以是基本数据类型,也可以是对象,总之,都可以作为抛出类型。

C++的异常机制就回想在这儿,如果需要深入了解C++的异常机制,请看C++ Prime Plus(第六版)

说完了 C++  我们再来说说Java 当初我认为语言都是相通的 那么异常处理机制也会是一样的,现在想来,我当时还是太天真了,在JAVA 看来,一切错误都是对象,一切异常都是对象,那么既然是对象,就会有类,没错,就是有类,那么在java中,负责处理异常的类是什么呢?答案是Exception类,在java的错误对象中,继承自java.lang.Throwable,有两个子类,java.lang.Error (这个通常是系统所有),java.lang.Exception(这个通常是用户所有)

所以在我们看来,如果我们觉得程序会出现的错误,系统可以自动检测以及自动处理的,可以用Error;类,但是我们一般都是在程序中使用自定义的异常类型,那么就需要用到Exception类。

对于JAVA 而言,具体的实现可以查看下以下的代码片段。





在java语言中 我们需要定义一个异常类 来继承这个Exception ,然后在这个类中填写处理的语句块,然后在相应的try块以及catch块所对应的函数 后面去声明这个异常数据类型。用throws   来声明一个 异常,然后在相应的try块中进行检测,catch块进行捕获,throw来抛出这个异常,这个就是大概的java异常处理机制.

如果需要更加深入的了解这个JAVA 的异常处理机制,那么请你去看看疯狂java讲义(李刚)(第二版)

那么现在的博客到此为止,若有什么问题,欢迎各位提出,也欢迎各位拍砖。谢谢!!!!!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章