首页 > 其他分享 >Exception异常

Exception异常

时间:2024-08-05 15:53:08浏览次数:15  
标签:lang Exception java 子类 抛出 异常

Exception异常

目录

是程序本身可以处理的异常。Exception 类有一个重要的子类 RuntimeException。RuntimeException 类及其子类表示“JVM 常用操作”引发的错误。例如,若试图使用空值对象引用、除数为零或数组越界,则分别引发运行时异常(NullPointerException、ArithmeticException)和 ArrayIndexOutOfBoundException。

运行时异常和非运行时异常

Exception(异常)分两大类:运行时异常和非运行时异常(编译异常)。

  • 运行时异常:都是RuntimeException类及其子类异常,如NullPointerException(空指针异常)、IndexOutOfBoundsException(下标越界异常)等,这些异常是不检查异常,程序中可以选择捕获处理,也可以不处理。这些异常一般是由程序逻辑错误引起的,程序应该从逻辑角度尽可能避免这类异常的发生。运行时异常的特点是Java编译器不会检查它,也就是说,当程序中可能出现这类异常,即使没有用try-catch语句捕获它,也没有用throws子句声明抛出它,也会编译通过。
  • 非运行时异常 (编译异常):是RuntimeException以外的异常,类型上都属于Exception类及其子类。从程序语法角度讲是必须进行处理的异常,如果不处理,程序就不能编译通过。如IOException、SQLException等以及用户自定义的Exception异常,一般情况下不自定义检查异常。

Java 常见异常

RuntimeException子类:

异常名称 异常描述
java.lang.ArrayIndexOutOfBoundsException 数组索引越界异常。当对数组的索引值为负数或大于等于数组大小时抛出。
java.lang.ArithmeticException 算术条件异常。譬如:整数除零等。
java.lang.SecurityException 安全性异常
java.lang.IllegalArgumentException 非法参数异常
java.lang.ArrayStoreException 数组中包含不兼容的值抛出的异常
java.lang.NegativeArraySizeException 数组长度为负异常
java.lang.NullPointerException 空指针异常。当应用试图在要求使用对象的地方使用了null时,抛出该异常。譬如:调用null对象的实例方法、访问null对象的属性、计算null对象的长度、使用throw语句抛出null等等。

IOException

异常名称 异常描述
IOException 操作输入流和输出流时可能出现的异常
EOFException 文件已结束异常
FileNotFoundException 文件未找到异常

其他

异常名称 异常描述
ClassCastException 类型转换异常类
ArrayStoreException 数组中包含不兼容的值抛出的异常
SQLException 操作数据库异常类
NoSuchFieldException 字段未找到异常
NoSuchMethodException 方法未找到抛出的异常
NumberFormatException 字符串转换为数字抛出的异常
StringIndexOutOfBoundsException 字符串索引超出范围抛出的异常
IllegalAccessException 不允许访问某类异常
InstantiationException 当应用程序试图使用Class类中的newInstance()方法创建
java.lang.ClassNotFoundException 找不到类异常。当应用试图根据字符串形式的类名构造类,而在遍历CLASSPAH之后找不到对应名称的class文件时,抛出该异常。

标签:lang,Exception,java,子类,抛出,异常
From: https://www.cnblogs.com/luoyiwen123/p/18343351

相关文章

  • 异常类型结构图
    异常类型结构图目录异常类型结构图异常类型结构图Error和Exception的区别Error和Exception的联系Error和Exception的区别异常类型结构图Error和Exception的区别Error和Exception的联系继承结构:Error和Exception都是继承于Throwable,RuntimeException继承自Exception。Error......
  • MybatisPlus自带方法报错BindingException: Invalid bound statement (not found)
    问题描述: MybatisPlus自带方法如xxx.list()xxx.save()或则xxMapper.selectList()... 等方法无法使用报错:Invalidboundstatement(notfound) 但是自己定义的sql方法可以使用问题排查: 1、自定义方法可使用排除xml位置不正确,包扫描没扫到(target目录下已生成对应的mapper和xml......
  • 异常处理机制
    异常处理机制目录异常处理机制捕捉异常try……catch来捕获错误多个catch和finally抛出异常throwthrows异常的传播捕捉异常try……catch来捕获错误try{Strings=processFile(“C:\\test.txt”);//ok:}catch(FileNotFoundExceptione){//filenotfound......
  • 什么是异常
    异常是发生在程序执行过程中阻碍程序正常执行的错误操作,只要在Java语句执行中产生异常则一个异常对象就会被创建。Throwable是所有异常的父类,它有两个直接子类Error和Exception,其中Exception又被继续划分为被检查的异常(checkedexception)和运行时的异常(runtimeexception......
  • 【Java基础知识5】异常
    一、什么是异常?正常程序所不能处理或没有处理的不正常行为称为异常。Java异常机制可以使程序中异常处理代码和正常业务代码分离,保证程序代码更加优雅,并提高程序健壮性。二、异常的层次结构三、异常的分类1.Throwable异常体系的顶层类,其派生出两个重要的子类, Error 和......
  • 异常
    异常1.什么是异常在Java中,异常(Exception)是指程序执行过程中可能出现的不正常情况或错误。它是一个事件,会干扰程序的正常执行流程,并可能导致程序出现错误或崩溃。异常在Java中是以对象的形式表示的,这些对象是从java.lang.Throwable类或其子类派生而来。定义:异常是在程序执行期间......
  • 服务异常,报too many open files
    "toomanyopenfiles"错误表示进程打开的文件句柄数量超出了操作系统允许的最大限制。解决方法:临时增加限制:可以使用命令 ulimit-n<数量> 来临时提升当前shell会话中的打开文件数量限制。永久增加限制:编辑 /etc/security/limits.conf 文件,添加或修改相应的行来......
  • seaweedfs-csi-driver 运行异常:volume hasn't been staged yet
     Defaultedcontainer"csi-seaweedfs-plugin"outof:csi-seaweedfs-plugin,driver-registrar,csi-liveness-probeI080109:12:04.188240main.go:73willrunnode:true,controller:false,attacher:trueI080109:12:04.188817main.go:79connectto......
  • 异常处理及其相关知识点
    写代码的时候,对于那些不确定会报什么错误或者说感觉可能会报错的地方,才会用到异常处理。但是切记,一般情况下不要用,毕竟这玩意影响代码的可读性,毕竟是你写代码的时候附加的逻辑。正本清源很多人以为只有try..except这种代码逻辑才是异常处理,我只能说大傻逼,懂个锤子。难道if........
  • Java - 异常与File
    异常灵魂四问:如果try中没有遇到问题,怎么执行?try全部执行,catch不执行如果try中可能会遇到多个问题,怎么执行?写多个catch与之对应,父类异常需要写在下面如果try中遇到的问题没有被捕获,怎么执行?异常会默认交给虚拟机处理,try...catch白写如果try中遇到了问题,那......