The cast() method of java.lang.Class class is used to cast the specified object to the object of this class. The method returns the object after casting in the form of an object.
Syntax:
public T[] cast(Object obj)
Parameter: This method accepts a parameter obj which is the object to be cast upon
Return Value: This method returns the specified object after casting in the form of an object.
Exception: This method throws:
- ClassCastException: if the object is not null and is not assignable to the type T.
Below programs demonstrate the cast() method.
Example 1:
// Java program to demonstrate // cast() method   import java.util.*;   public class Test {       public static Object obj;       public static void main(String[] args)         throws ClassNotFoundException     {           // returns the Class object for this class         Class myClass = Class.forName( "Test" );           System.out.println( "Class represented by myClass: "                            + myClass.toString());           // Cast the object obj to object of myClass         // using cast() method         System.out.println( "Object " + obj + " after cast "                            + "upon to class Test: "                            + myClass.cast(obj));     } } |
Class represented by myClass: class Test Object null after cast upon to class Test: null
Example 2:
// Java program to demonstrate // cast() method   import java.util.*;   class Main {       private static int obj = 10 ;       public static void main(String[] args)         throws ClassNotFoundException     {           try {             // returns the Class object for this class             Class myClass = Class.forName( "Main" );               System.out.println( "Class represented by myClass: "                                + myClass.toString());               // Cast the object obj to object of myClass             // using cast() method             System.out.println( "Object " + obj + " after cast "                                + "upon to class Test: "                                + myClass.cast(obj));         }         catch (Exception e) {             System.out.println(e);         }     } } |
Class represented by myClass: class Main java.lang.ClassCastException: Cannot cast java.lang.Integer to Main
Reference: https://docs.oracle.com/javase/9/docs/api/java/lang/Class.html#cast-java.lang.Object-