异常处理

简介: 异常处理

异常定义:

       程序在运行时出现不正常情况。

       问题也是现实生活中的一个具体事物,可以通过java类的形式进行描述。并封装成对象。Java对不正常情况进行描述后的对象体现。

       问题划分:严重/非严重。

       严重的:java通过Error类描述。

               Error一般不编写针对性的代码进行处理。

       非严重的:java通过Exception类进行描述。

               对于Exception可以使用针对性的处理方式进行处理。

        常见的异常:数组下标越界、空指针......

        常见的错误:内存溢出OutofmemoryError

       ErrorException都有一些共性内容,抽取出来成为Throwable类。

        Throwable

               |--Error

               |--Exception

                       |--RuntimeException

自定义异常:

       必须是自定义类继承Exception,或者Throwable,或者Error

       原因:异常体系特点:异常类和异常对象都需要被抛出。这个可抛性是Throwable这个体系独有特点。

throwthrows的区别:

       throws使用在函数上,throw使用在函数内。

       throws后面跟的异常类。可以跟多个,用逗号隔开。

       throw后边跟的是异常对象

对多异常的处理:

       1、声明异常时,越具体越好。

       2、多个catch块儿,父类的catch放到最下面。

Exception中特殊的子类异常运行时异常:

       如果在函数内抛出该异常,函数上可以不用声明,编译可以通过。

       如果在函数上声明了该异常。调用者可以不用进行处理,编译可以通过。

       之所以不用在函数声明,是因为不需要让调用者处理。

       当该异常发生,希望程序停止。因为在运行时,出现了无法继续运算的情况,希望停止程序后,对代码进行修正。

       如果该异常的发生,无法再继续进行运算,就让自定义异常继承RuntimeException

异常分两种:

       1、编译时被检测的异常。

       2、编译时不被检测的异常(运行时异常。RuntimeException及其子类)

       编译时被检测的异常是可处理的,需要声明出来,被调用者处理。调用者用try catch去处理。

       编译时不被检测的异常可只声明或只在内部抛出。

       throwreturn都是函数结束标识。它们后边的代码都不能执行。

Finally:

       finally代码块:定义一定执行的代码。通常用于关闭资源,比如数据库连接。

异常的好处:

       1、将问题进行封装。

       2、将正常流程代码和问题处理代码相分离,方便于阅读。

总结:

       异常处理,多多实践。


相关文章
|
2月前
try...except异常处理
【10月更文挑战第16天】try except的一些异常处理方法
35 2
|
2月前
|
SQL Java 程序员
异常处理
【10月更文挑战第10天】
14 2
|
3月前
|
Python
ython之对异常处理
ython之对异常处理
|
7月前
|
C++
C++程序异常处理
C++程序异常处理
46 1
|
C#
C#异常处理
C#异常处理
67 0
|
7月前
|
C++
C++ 异常处理
C++ 异常处理
|
7月前
|
存储 安全 Java
【C++】—— 异常处理
【C++】—— 异常处理
|
7月前
|
C++
C++异常处理详解
C++异常处理详解
40 0
|
7月前
|
存储 C++
63异常处理
63异常处理
34 0
|
Java 编译器 C++
C++异常处理
C++异常处理
40 0