Java 中的内存不足异常:\

java 8object oriented programmingprogramming更新于 2025/11/7 5:32:17

在 Java 中,每当您创建对象时,它都会存储在 JVM 的堆区域中。如果 JVM 无法为新创建的对象分配内存,则会抛出名为 OutOfMemoryError 的异常。

这通常发生在我们长时间未关闭对象或尝试一次性处理大量数据时。

OutOfMemoryError 中有 3 种类型的错误 −

  • Java 堆空间。
  • 超出 GC 开销限制。
  • 永久代空间。

示例 1

public class SpaceErrorExample {
  public static void main(String args[]) throws Exception {
Float[] array = new Float[10000 * 100000];
}
}

输出

运行时异常

Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
   at sample.SpaceErrorExample.main(SpaceErrorExample.java:7)

示例 2

import java.util.ArrayList;
import java.util.ListIterator;
public class OutOfMemoryExample{
   public static void main(String args[]) {
      //实例化 ArrayList 对象
      ArrayList<String> list = new ArrayList<String>();
      //填充 ArrayList
      list.add(&"apples");
      list.add(&"mangoes");
      list.add(&"oranges");
      //获取 ArrayList 的 Iterator 对象
      ListIterator<String> it = list.listIterator();
      while(it.hasNext()) {
         it.add("");
      }
   }
}

输出

运行时异常

Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
   at sample.SpaceErrorExample.main(SpaceErrorExample.java:7)

相关文章