- Java.lang - Home
- Java.lang - Boolean
- Java.lang - Byte
- Java.lang - Character
- Java.lang - Character.Subset
- Java.lang - Character.UnicodeBlock
- Java.lang - Class
- Java.lang - ClassLoader
- Java.lang - Compiler
- Java.lang - Double
- Java.lang - Enum
- Java.lang - Float
- Java.lang - InheritableThreadLocal
- Java.lang - Integer
- Java.lang - Long
- Java.lang - Math
- Java.lang - Number
- Java.lang - Object
- Java.lang - Package
- Java.lang - Process
- Java.lang - ProcessBuilder
- Java.lang - Runtime
- Java.lang - RuntimePermission
- Java.lang - SecurityManager
- Java.lang - Short
- Java.lang - StackTraceElement
- Java.lang - StrictMath
- Java.lang - String
- Java.lang - StringBuffer
- Java.lang - StringBuilder
- Java.lang - System
- Java.lang - Thread
- Java.lang - ThreadGroup
- Java.lang - ThreadLocal
- Java.lang - Throwable
- Java.lang - Void
- Java.lang Package Useful Resources
- Java.lang - Useful Resources
- Java.lang - Discussion
Java - NegativeArraySizeException
The NegativeArraySizeException in Java occurs when an attempt is made to create an array with a negative size. This is a runtime exception.
Following is the reason when JVM throws a NegativeArraySizeException in Java:
- When an attempt is made to create an array with a negative size, JVM throws a NegativeArraySizeException.
Methods of NegativeArraySizeException
There are some methods of NegativeArraySizeException class:
| Method | Description |
|---|---|
| getMessage() | It is used to return the message of the exception. |
| toString() | It is used to return the detail message string of the exception. |
| printStackTrace() | It is used to print the stack trace of the exception. |
Example of NegativeArraySizeException
In this example, we are creating an array with a negative size, so JVM will throw a NegativeArraySizeException.
public class NegativeArraySizeExceptionExample {
public static void main(String[] args) {
int[] arr = new int[-5];
}
}
Output
Following is the output of the above code:
Exception in thread "main" java.lang.NegativeArraySizeException at NegativeArraySizeExceptionExample.main(NegativeArraySizeExceptionExample.java:3)
As you can see in the output, JVM throws a NegativeArraySizeException because we are creating an array with a negative size.
Handling NegativeArraySizeException
In this example, we are creating an array with a negative size, so JVM will throw a NegativeArraySizeException. We are handling this exception using a try-catch block.
public class NegativeArraySizeExceptionExample {
public static void main(String[] args) {
try {
int[] arr = new int[-5];
} catch (NegativeArraySizeException e) {
System.out.println("Array size should be non-negative");
}
}
}
Output
Following is the output of the above code:
Array size should be non-negative
How to avoid NegativeArraySizeException?
To avoid a NegativeArraySizeException, you should always create an array with a non-negative size.