【狂神说Java】学习笔记18:异常机制 Exception

【狂神说Java】学习笔记18:异常机制 Exception

[01] 什么是异常

[02] 异常体系结构

[03] Java异常处理机制

[04] 处理异常

[05] 自定义异常

[06] 总结

--------------------------------------------------------------------

image


[01] 什么是异常

image


异常一般分为三种:

检查性异常,运行时异常,错误ERROR(较致命)

测试员是专门进行测试的。

image

[02] 异常体系结构

异常体系结构

image


Error和Exception的区别

Error是由Java抛出的,大多数于代码编译者无关,但是避免此类Error,因为一旦线上运行的程序崩溃,会造成无法弥补的损失。

image


Exception一般是程序员设计时导致的出错,

image

[03] Java异常处理机制

分为抛出异常和捕获异常。

image

[04] 处理异常

实例1:a/b,当b为0的时候出现异常。捕获异常的写法。

package oop.Exception;

public class demo01 {
    public static void main(String[] args) {
        int a = 1;
        int b = 0;

        //异常处理时必须要try和catch。可以不要finally。
        //catch捕获多个异常的时候,括号里的异常类型按从小到大的等级去写。否则报错。
        try{    //try监控区域
            System.out.println(a/b);
        }catch(ArithmeticException e){  // catch捕获异常,里面参数时捕获的异常类型。
            System.out.println("程序出现异常,被除的变量不能为o");

        }catch(RuntimeException e){
            System.out.println("RuntimeException");

        }catch(Exception e){
            System.out.println("Exception");

        }finally {  //结束,可以不加。
            System.out.println("finally");
        }
    }
}
----------------------------------
程序出现异常,被除的变量不能为o
finally

tips 自动生成代码块

//Ctrl + Alt + T  自动生成代码块。
		try {
            System.out.println(a/b);
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
        }

[05] 自定义异常

Java里有很多异常的处理,通过自定义异常写出自己独特的异常case。

image


自定义异常实例

自定义一个异常类MyException,使其继承Exception。(Test1.java来测试这个异常类。)
然后写规则让超过10的时候抛出异常,输出”抛出的异常MyException=>MyException{@参数}“的结果。
输出的数字小于10则输出这个数,并输出OK。

image


[06] 总结

image


tips

程序异常的时候会自动报错,显示红色,摁住 Alt + Enter ,会自动帮忙处理。

IO资源容易占用内存资源,所以尽量加上finally语块。

posted @ 2021-07-01 23:01  金城麻吉  阅读(110)  评论(0编辑  收藏  举报