首页 > 其他 > 详细

常见受检和非受检异常,StackOverflowException和OutOfMemoryError常用解决方法

时间:2020-03-18 00:23:56      阅读:90      评论:0      收藏:0      [点我收藏+]

一、运行时异常(非受检异常):RuntimeException

NullPointerException,ArrayIndexOutBoundException,ClassCastException,IndexOutOfBoundsException,ArrayStoreException,BufferOverflowException

二、编译时异常(受检异常):除RuntimeException之外的Exception

ClassNotFoundException,IOException,SQLException,FileNotFoundException,InterruptedException

 以下问题解决方式:

1.StackOverflowException出现的原因,主要是调用层次太深导致栈溢出或死循环

2.OutOfMemoryError:内存不足错误

  解决方式:

  1. 增加java虚拟机中的XX:PermSize和XX:MaxPermSize参数的大小,其中XX:PermSize是初始永久保存区域大小,XX:MaxPermSize是最大永久保存区域大小。如针对tomcat6.0,在catalina.sh 或catalina.bat文件中一系列环境变量名说明结束处(大约在70行左右) 增加一行:JAVA_OPTS=" -XX:PermSize=64M -XX:MaxPermSize=128m"

  2. 检查程序,看是否有死循环或不必要地重复创建大量对象。

  3. 增加Java虚拟机中Xms(初始堆大小)和Xmx(最大堆大小)参数的大小。如:set JAVA_OPTS= -Xms256m -Xmx1024m

 

常见受检和非受检异常,StackOverflowException和OutOfMemoryError常用解决方法

原文:https://www.cnblogs.com/ivy-xu/p/12510312.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!