讲讲Java异常

什么是异常

程序在执行过程中出现非正常情况,如果不处理会导致JVM的非正常停止

异常的抛出机制

Java中把不同的异常用不同的类表示,一旦发生某种异常,就创建该异常类型的对象,并且抛出(throw),然后程序员就可以捕获(catch)这个异常对象,如果没有捕获,则会停止程序

异常的体系结构

Throwable:异常根目录

 —Error:错误,虚拟机无法解决的严重问题,例如系统内部错误,资源耗尽等,一般不编写针对性的代码进行处理

 —Exception:异常,我们可以编写针对性的代码进行处理

  —编译时异常 在执行javac时出现的异常

  —运行时异常 在执行Java时出现的异常

如何自定义异常

可以参考Exception的写法:但自定义的通常继承于RuntimeException \ Exception

通常提供几个重载的构造器

提供一个全局常量,声明为static final long serialVersionUID

首先类要继承现有的异常体系

RuntimeException,Exception都可以

public class MYException extends Exception{
    //全局序列化ID ,用来识别当前类
    static final long serialVersionUID = xxx;
    //写构造器
    public MYException(){}
   
    public MYException(String name){super(name);}     
     public MYException(String name,Throwable cause){super(name,cause);}          
}

使用时需要手动throw 自定义对象,之后在用的时候catch进行抓取处理

本文基于作者自身的学习总结。如有错误,恳请指出。 如果对您有帮助的话,请给我点个赞吧。作者在后面也会分享文章,要是感兴趣也可以给我点个关注。

你可能感兴趣的:(java)