一旦抛出此异常,是否是导致此异常的对象内存不足?它会立即发生吗?
换句话说,如果我将对象添加到列表中,在某些时候这将不再发生,并且会引发 OOM 错误。到时候,名单本身有什么事情吗?
java.lang.OutOfMemoryError: Java heap space
一旦抛出此异常,是否是导致此异常的对象内存不足?它会立即发生吗?
换句话说,如果我将对象添加到列表中,在某些时候这将不再发生,并且会引发 OOM 错误。到时候,名单本身有什么事情吗?
java.lang.OutOfMemoryError: Java heap space
当无法创建新对象时抛出此错误。当前对象将继续存在。
但是,由于此类错误的性质,当前代码将停止执行,并且很可能当前对象将很快被垃圾收集。它仅取决于代码的结构以及引用是否仍保留在您的对象中。
从文档:
当 Java 虚拟机因为内存不足而无法分配对象时抛出,并且垃圾收集器无法提供更多内存。
根据http://docs.oracle.com/javase/6/docs/api/, OutOfMemoryError 是:
当 Java 虚拟机因为内存不足而无法分配对象时抛出,并且垃圾收集器无法提供更多内存。
因此,一旦 JVM 发现它没有足够的堆空间来为您尝试创建的新对象分配内存,就会发生这种情况。所以对象永远不会被创建,因为你没有足够的内存。