泰宁新闻网

java栈溢出,java栈溢出解决办法

泰宁新闻网 http://www.tainingxinwen.cn 2020-11-22 08:35 出处:网络
java栈溢出,java栈溢出解决办法,java代码实现JVM栈溢出,堆溢出 创建对象时如果没有可以分配的堆内存,就会出现堆溢出。

java栈溢出,java栈溢出解决办法,java代码实现JVM栈溢出,堆溢出

创建对象时如果没有可以分配的堆内存,就会出现堆溢出。

三、 两者实例如下:
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Scanner;
public class testCode {
 public void testHeap(){//堆溢出
 List byte[] list = new ArrayList ();
 int i=0;
 while (true){
 list.add(new byte[5*1024*1024]);
 System.out.println("count is: "+(++i));
 int num = 1;
 public void testStack(){ //栈溢出
 num++;
 this.testStack();
 public static void main(String[] agrs){
 testCode t = new testCode();
 t.testHeap();
 t.testStack();

 

运行结果:

//堆溢出:
count is: 343
count is: 344
count is: 345
count is: 346
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
 at testCode.testHeap(testCode.java:14)
 at testCode.main(testCode.java:25)
//栈溢出:
StackOverflowError

本文标题:java栈溢出,java栈溢出解决办法
http://www.tainingxinwen.cn/qitaxinxi/552393.html

0

精彩评论

暂无评论...
验证码 换一张
取 消