栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java异常

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java异常

异常分类

异常主要有两类:

Error:系统内部错误,这类错误由系统进行处理,程序本身无需捕获处理。Exception:可以处理的异常。

Exception有分为:

RuntimeExcption 异常(运行时异常):可以捕获,也可以不捕获。

非 RuntimeException(受检异常 / 编译时异常,Checked Exception):必须捕获。

RuntimeExcption 异常主要包括:

错误的类型转换数组访问越界访问 null 指针算术异常

Checked Exception 异常主要有:

打开一个不存在的文件没有找到具有指定名称的类操作文件异常io 异常 throw 和 throws

throw 手动抛出异常:

		if (a == null || b == null) {
            throw new NullPointerException();
        }

throws 声明异常:

	public static void throwsTest() throws FileNotFoundException {
        new FileInputStream("/home/project/shiyanlou.file");
    }
捕获异常

使用 try 和 catch 语句块来捕获异常,有时候还会用到 finally。

try 语句块是必不可少的,catch 和 finally 语句块可以根据情况选择其一或者全选。

catch 语句块可以有多个,表示捕获多个异常。

自定义异常

(1)继承 Exception 或其子类;

(2)提供无参构造方法和带字符串参数的构造方法。

例如:

// MyAriException.java
public class MyAriException extends ArithmeticException {
    //自定义异常类,该类继承自ArithmeticException

    public MyAriException() {

    }
    //实现默认的无参构造方法

    public MyAriException(String msg) {
        super(msg);
    }
    //实现可以自定义输出信息的构造方法,将待输出信息作为参数传入即可
}
异常堆栈

当异常抛出后,我们可以通过异常堆栈追踪程序的运行轨迹。

例如:

java.lang.NullPointerException
    at ExceptionStackTrace.method2(ExceptionStackTrace.java:7)
    at ExceptionStackTrace.method1(ExceptionStackTrace.java:3)
    at ExceptionStackTrace.main(ExceptionStackTrace.java:11)

从下往上看,就可以得出程序运行的轨迹。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/782079.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号