今天做了个笔试,这是其中的一道题目:写代码使得分别出现StackOverflowError和OutOfMemoryError

1.StackOverflowError

  堆栈溢出错误一般是递归调用嘛。下面的代码就可以出现:

package T20131009;
public class StackOverflowTest {
    public static void main(String[] args) {
        method();
    }
    public static void method(){
        for(;;)
            method();
    }
}

运行结果:

  java面试题:写代码使得分别出现StackOverflowError和OutOfMemoryError

 2.OutOfMemoryError

   内存溢出一般是出现在申请了较多的内存空间没有释放的情形。下面的代码就可以出现:

package T20131009;
import java.util.ArrayList;
import java.util.List;
public class OutOfMemoryTest {
    public static void main(String[] args){
        List list=new ArrayList();
        for(;;){
            int[] tmp=new int[1000000];
            list.add(tmp);
        }
    }
}

运行结果:

java面试题:写代码使得分别出现StackOverflowError和OutOfMemoryError

相关文章:

  • 2021-11-20
  • 2021-12-23
  • 2021-12-30
  • 2021-11-26
  • 2022-12-23
  • 2021-07-21
  • 2022-12-23
猜你喜欢
  • 2021-09-19
  • 2022-03-10
  • 2021-06-24
  • 2021-12-28
  • 2022-02-18
  • 2021-08-24
  • 2022-12-23
相关资源
相似解决方案