Java 中的記憶體溢位異常:\n


每當你在 Java 中建立一個物件,它就被儲存在 JVM 的堆區域中。如果 JVM 無法為新建立的物件分配記憶體,就會丟擲一個名為 OutOfMemoryError 的異常。

這通常發生在我們長時間不關閉物件,或嘗試一次性操作大量資料時。

OutOfMemoryError 有 3 種類型的錯誤 −

  • Java 堆空間。
  • GC 開銷限制已超過。
  • Permgen 空間。

示例 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[]) {
      //Instantiating an ArrayList object
      ArrayList<String> list = new ArrayList<String>();
      //populating the ArrayList
      list.add("apples");
      list.add("mangoes");
      list.add("oranges");
      //Getting the Iterator object of the ArrayList
      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)

更新於:06-Sep-2019

957 次瀏覽

開啟 職業生涯

完成課程以獲得認證

開始
廣告
© . All rights reserved.