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-