Java基础、中级、高级、架构面试资料

Java常见的12大异常和解决办法

JAVA herman 4484浏览 0评论
公告:“业余草”微信公众号提供免费CSDN下载服务(只下Java资源),关注业余草微信公众号,添加作者微信:xttblog2,发送下载链接帮助你免费下载!
本博客日IP超过2000,PV 3000 左右,急需赞助商。
极客时间所有课程通过我的二维码购买后返现24元微信红包,请加博主新的微信号:xttblog2,之前的微信号好友位已满,备注:返现
受密码保护的文章请关注“业余草”公众号,回复关键字“0”获得密码
所有面试题(java、前端、数据库、springboot等)一网打尽,请关注文末小程序
视频教程免费领
腾讯云】1核2G5M轻量应用服务器50元首年,高性价比,助您轻松上云

告诉你什么是经验,经验就是这些东西我都经历过,并且得到了我的验证!最近有网友问我ClientAbortException:  java.io.IOException怎么解决?讲了半天,对方还没明白,后来我就整理了一个文档,发给她。现分享给大家!
java.lang.ArithmeticException
算术运算异常,因为除数为0,所以引发了算数异常
java.lang.StringIndexOutOfBoundsException: String index out of range: -1
这是截取字符串substring()产生的下标越界异常。原因是可能是字符串为空,或长度不足1
ClientAbortException: java.io.IOException异常
原因是由于服务器正在处理http请求,正在输出内容时,用户关闭了浏览器,造成了ClientAbortException异常。它属于I/O异常中比较常见的一种。
ClientAbortException  Caused by: java.net.SocketException: Connection reset by peer: socket write error
这种异常已比较常见,通常有以下几种情况:
服务器的并发连接数超过了其承载量,服务器会将其中一些连接Down掉;客户关掉了浏览器,而服务器还在给客户端发送数据
java.lang.NullPointerException空指针异常
出现该异常的原因在于某个引用为null,但却调用了它的某个方法,这时就会出现该异常
ClassCastException
类型强制转换异常,例如:Object x = new Integer(0);System.out.println((String)x);
IllegalArgumentException
传递非法参数异常,此异常表明向方法传递了一个不合法或不正确的参数。你看看传值的方法是否参数不正确
ArrayStoreException
向数组中存放与声明类型不兼容对象异常,例如:Object x[] = new String[3];x[0] = new Integer(0);
NegativeArraySizeException
创建一个大小为负数的数组错误异常,例如int[] arr = new int[10];int i = arr[-1];
NumberFormatException
数字格式异常,例如:把"176//240"这个输入字条转换为一个数字
SecurityException
安全异常,例如:android的权限异常,运行java的程序提示Missing requited Permissions manifest attribute in main jar等
UnsupportedOperationException
不支持的操作异常,例如String testStr = "100,300,400,545,666";List<String> test = Arrays.asList(testStr.split(","));test.remove("100");使用Arrays.asList()方法一定要注意类型的转换。

Java中的异常分为两大类:
  1.Checked Exception(非Runtime Exception)
  2.Unchecked Exception(Runtime Exception)

运行时异常
  RuntimeException类是Exception类的子类,它叫做运行时异常,Java中的所有运行时异常都会直接或者间接地继承自RuntimeException类。
  Java中凡是继承自Exception,而不继承自RuntimeException类的异常都是非运行时异常
。附一张java异常机制图:

java异常机制

版权声明:本文为博主原创文章,未经博主允许不得转载。

业余草公众号

最后,欢迎关注我的个人微信公众号:业余草(yyucao)!可加作者微信号:xttblog2。备注:“1”,添加博主微信拉你进微信群。备注错误不会同意好友申请。再次感谢您的关注!后续有精彩内容会第一时间发给您!原创文章投稿请发送至532009913@qq.com邮箱。商务合作也可添加作者微信进行联系!

本文原文出处:业余草: » Java常见的12大异常和解决办法