StackOverflowError OutOfMemoryError
来源:互联网 发布:送男朋友的礼物 知乎 编辑:程序博客网 时间:2024/05/17 04:33
一般有这几种异常:
java.long.StackOverflowError
与栈(stack)相关,因为每个方法都会有一个栈帧,递归调用时容易出现这种异常。
public static void main(String[] args) { int n=10; add(n); } public static void add(int n){ add(n-1); } //Exception in thread "main" java.lang.StackOverflowError
在调用方法时要注意确保方法调用的结束,不能无限循环调用
- java.long.OutOfMemoryError
比较常见的java.lang.OutOfMemoryError:heap space
,java.lang.OutOfMemoryError: PermGen space
1, java.lang.OutOfMemoryError: PermGen space
是说 JVM 里的方法区的异常溢出,由于JVM在默认的情况下,Perm默认为64M,而很多程序需要大量的Perm区内存,导致OutOfMemoryError: PermGen space异常。
解决方法,增大JVM的 -XX:MaxPermSize 启动参数
2, java.lang.OutOfMemoryError:heap space 其它 OutOfMemoryError
而这个异常是因为 JVM堆内存或者说总体分少了。
解决方法,更改 -Xms -Xmx 启动参数
public class Errors { public static void main(String[] args) { Vector<BigObject> vector = new Vector<BigObject>(); while(true){ vector.add(new BigObject()); } }}class BigObject{ int n=10; public void test(){ n=20; }}//Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
参考:http://stackoverflow.com/questions/11435613/whats-the-difference-between-stackoverflowerror-and-outofmemoryerror;
http://blog.csdn.net/chaofanwei/article/details/19483101;
http://blog.csdn.net/roland101/article/details/2197444
- StackOverflowError OutOfMemoryError
- StackOverflowError&OutOfMemoryError区别
- 理解StackOverflowError与OutOfMemoryError
- 理解StackOverflowError与OutOfMemoryError
- StackOverflowError与OutOfMemoryError区别
- StackOverflowError和OutOfMemoryError区别
- 制造StackOverflowError与OutOfMemoryError
- java stackoverflowerror与outofmemoryerror区别
- StackOverflowError 和 OutOfMemoryError 的区别
- 实战:OutOfMemoryError和StackOverflowError异常
- java stackoverflowerror与outofmemoryerror区别
- OutOfMemoryError和StackOverflowError异常demo
- Java的OutOfMemoryError和StackOverflowError
- JVM—内存溢出、OutOfMemoryError、StackOverflowError
- Java中StackOverflowError与OutOfMemoryError详解
- 代码使得分别出现StackOverflowError和OutOfMemoryError
- 服务器程序问题记录OutOfMemoryError And StackOverflowError
- JVM中stackoverflowerror与outofmemoryerror区别
- 在OpenCV2.2后的版本中没有CvvImage类的解决方法(及出现错误:IntelliSense: 未定义标识符 "CvvImage")
- 物联12:二进制树型搜索算法实例
- Mongodb简介及Spring集成
- [Point Cloud Library] 点云数据写入PCD文件
- C#Hashtable与Dictionary性能
- StackOverflowError OutOfMemoryError
- 如何判断CPU是大端还是小端模式
- Java 字符串匹配正则表达式
- 字符数组与字符串区别
- Error executing aapt: Return code -1073741819
- Objective-C 手势解锁App
- 【技术视频详解】论400G超大容量OTN高速交叉技术
- Java编程获取键盘输入值的三种方法
- when you are young