ArrayStoreException in Java - GeeksforGeeks

10 Oct, 2018
ArrayStoreException in Java occurs whenever an attempt is made to store the wrong type of object into an array of objects. The ArrayStoreException is a class which extends RuntimeException, which means that it is an exception thrown at the runtime.
Class Hierarchy:
java.lang.Object
↳ java.lang.Throwable
    ↳ java.lang.Exception
        ↳ java.lang.RuntimeException
            ↳ java.lang.ArrayStoreException 

Constructors of ArrayStoreException:
ArrayStoreException(): Constructs an ArrayStoreException instance with no detail message.ArrayStoreException(String s): Constructs an ArrayStoreException instance with the specified message s.
ArrayStoreException(): Constructs an ArrayStoreException instance with no detail message.
ArrayStoreException(String s): Constructs an ArrayStoreException instance with the specified message s.
When does ArrayStoreException occurs?ArrayStoreException in Java occurs whenever an attempt is made to store the wrong type of object into an array of objects.Below example illustrates when does ArrayStoreException occur:Since Number class is a superclass of Double class, and one can store an object of subclass in super class object in Java. Now If an integer value is tried to be stored in Double type array, it throws a runtime error during execution. The same thing wouldn’t happen if the array declaration would be like:public class GFG {      public static void main(String args[])    {          // Since Double class extends Number class        // only Double type numbers        // can be stored in this array        Number[] a = new Double[2];          // Trying to store an integer value        // in this Double type array        a[0] = new Integer(4);    }}Runtime Exception:Exception in thread “main” java.lang.ArrayStoreException: java.lang.Integerat GFG.main(GFG.java:13)
ArrayStoreException in Java occurs whenever an attempt is made to store the wrong type of object into an array of objects.
Below example illustrates when does ArrayStoreException occur:
Since Number class is a superclass of Double class, and one can store an object of subclass in super class object in Java. Now If an integer value is tried to be stored in Double type array, it throws a runtime error during execution. The same thing wouldn’t happen if the array declaration would be like:
public class GFG {      public static void main(String args[])    {          // Since Double class extends Number class        // only Double type numbers        // can be stored in this array        Number[] a = new Double[2];          // Trying to store an integer value        // in this Double type array        a[0] = new Integer(4);    }}
Runtime Exception:
Exception in thread “main” java.lang.ArrayStoreException: java.lang.Integerat GFG.main(GFG.java:13)
How to handle with ArrayStoreException?One can use try-catch block in Java to handle ArrayStoreException.Below example illustrates how to handle ArrayStoreException:public class GFG {      public static void main(String args[])    {          // use try-catch block        // to handle ArrayStoreException        try {              Object a[] = new Double[2];              // This will throw ArrayStoreException            a[0] = 4;        }          catch (ArrayStoreException e) {              // When caught, print the ArrayStoreException            System.out.println("ArrayStoreException found: "                               + e);        }    }}Output:ArrayStoreException found: java.lang.ArrayStoreException: java.lang.Integer
One can use try-catch block in Java to handle ArrayStoreException.
Below example illustrates how to handle ArrayStoreException:
public class GFG {      public static void main(String args[])    {          // use try-catch block        // to handle ArrayStoreException        try {              Object a[] = new Double[2];              // This will throw ArrayStoreException            a[0] = 4;        }          catch (ArrayStoreException e) {              // When caught, print the ArrayStoreException            System.out.println("ArrayStoreException found: "                               + e);        }    }}
Output:
ArrayStoreException found: java.lang.ArrayStoreException: java.lang.Integer
Java-Exception Handling
Java-Exceptions
Java
Java
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Stream In Java
Exceptions in Java
Constructors in Java
Functional Interfaces in Java
Different ways of Reading a text file in Java
Generics in Java
Introduction to Java
Comparator Interface in Java with Examples
PriorityQueue in Java
How to remove an element from ArrayList in Java?