以下是Java 中可能发生的OOM(内存不足)异常。
java.lang.OutOfMemoryError: Java 堆空间:堆内存耗尽异常当JVM 尝试在堆内存中存储更多数据而没有足够的可用内存时,会抛出此异常。 java.lang.OutOfMemoryError: GC Overhead Limit Exceeded: GC Overhead Limit Exceeded 异常当JVM 执行垃圾回收且回收时间过长导致应用程序内存不足时,会抛出此异常。 java.lang.OutOfMemoryError: 直接缓冲内存:直接内存耗尽异常。当应用程序尝试将更多数据保存到直接内存但没有足够的可用内存时,会引发此异常。 java.lang.OutOfMemoryError: 无法创建新的本机线程:无法创建新的本机线程异常。当应用程序尝试创建新的本机线程并且系统资源不足时,会引发此异常。 java.lang.OutOfMemoryError: 元空间:元空间耗尽异常。当JVM 在元空间中分配更多的类和方法信息并且没有足够的可用内存时,会抛出此异常。 java.lang.StackOverflowError:线程堆栈空间耗尽异常。当线程的线程堆栈空间耗尽并且没有为新创建的堆栈帧分配足够的资源时,会抛出此异常。 java.lang.NoClassDefFoundError:未找到定义的类异常。当JVM 尝试加载类但找不到该类的定义时,会抛出此异常。 java.lang.ClassNotFoundException:类未找到异常。当JVM 尝试加载类但找不到该类的定义时,会抛出此异常。上述所有OOM 都是错误,并非例外。