news 2026/4/4 17:10:55

异常 0-0

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
异常 0-0
一、概念【理解即可】
1.异常:程序运行过程中,出现的非正常情况。
2.异常的处理:当异常出现时,执行一段预先准备好的代码。
3.异常的处理的必要性:减少用户的损失、同时减小给用户带来麻烦,也可以对用户做一些提示信息。
二、异常的分类 【面试重点】
1. ThrowableJava语言中所有错误或是异常的父类,位于java.lang包中
(1) String getMessage():获取字符串类型异常信息。//用于给用户展示提示信息
(2) void printStackTrace():打印输出方法调用过程中产生详细异常信息。//编程人员用于调试程序
2.子类Error:是Throwable的子类,代表错误
注意:Error代表仅靠程序本身无法恢复的严重的错误,例如JVM内存不足,或是方法调用过程中栈溢出等。
例如:java.lang.StackOverflowError(递归导致的栈溢出)
3.子类Exception:是Throwable的子类,代表异常
(1) RuntimeException:运行时异常、未检查异常,与RuntimeException有直接或是间接继承关系的异常类
a.特点:编译器不会检测此类异常,运行的时候报错。
b.处理:可处理,可不处理(严谨代码),此类异常可以避免。
c.常见的运行时异常:
java.lang.ArrayIndexOutOfBoundsException:下标越界
java.lang.NullPointerException:空指针异常
java.lang.ClassCastException:类型转换异常
java.lang.NumberFormatException:数字格式转换异常
(2)RuntimeException:非运行时异常、已检查异常,与RuntimeException没有任何的继承关系的异常类
a.特点:编译器检测此类异常,编译的时候报的错误。
b.处理:此类异常必须处理。
c.案例:Class.forName("day1.TestStudent"); //非运行时异常, 区分于语法错误
三、异常的产生
1.自动产生异常:
(1)产生原因:程序在运行过程中,遇到错误的代码,自动产生异常
(2)结果:程序中一旦遇到异常,则被终止,不能继续执行异常之后的代码。
2.手动产生异常【开发重点】(1)关键字:throw
(2)语法:throw new异常类类名("异常信息");
(3)位置:必须定义在方法内部
(4)结果:相当于return ;终止、结束当前程序,程序会因异常而被终止。
四、异常的传递【理解即可】
1. Java中的异常沿着方法的调用链进行反方向传递,最终传递给JVM,程序因被终止。
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!