Java异常(总结)

来源:互联网 发布:视频网站 python 编辑:程序博客网 时间:2024/05/22 09:43
Throwable类的两个子类:Error和Exception

Exception是一个类:分为两大子类:RuntimeException(运行时异常)和IOException(非运行时异常

RuntimeException:程序运行时异常
---空指针异常
---OOM
---数学异常 1/0
----数组下标越界异常:初始化a[10]但是使用了a[100]

IOException:输入输出异常
----找不到文件
----找不到类


异常处理的核心机制:抓抛模型----将异常信息封装成一个对象,可以捕获和抓取。

异常产生的步骤:
1.程序运行到异常代码处
2.JVM检测到异常
3.创建异常的实例对象
4.抛出异常
5.停止程序并打印异常信息

抛出异常:
throws关键字(抛出异常后成型停止执行,后面加异常类的类名):调用者来抛出:在调用可能有异常的方法的方法后写,当前方法不处理,给调用者处理 
public void method() throws Exception {  ...  }

throw关键字(抛出一个异常类对象,后面加已经创建好的异常类对象):自定义异常,手动抛出的异常

  1. public void TestException(){
  2. MyException me = new MyException();
  3. throw exception;
  4. }
MyException.java
  1. public class MyException extends RuntimeException{
  2. }



try catch关键字(捕获后可以进行挽回操作):
----try(尝试执行)
----catch(出现异常后执行的代码块)
捕获异常后程序可以继续执行
-----finally,语句一定会执行(通常用于关闭IO流、文件)

执行顺序:
1.try---异常---catch----finally---return    
2.try-----finally----try的return








原创粉丝点击