Class isAssignableFrom() method in Java with Examples - GeeksforGeeks

27 Nov, 2019
The isAssignableFrom() method of java.lang.Class class is used to check if the specified class’s object is compatible to be assigned to the instance of this Class. It will be compatible if both the classes are the same, or the specified class is a superclass or superinterface. The method returns true if the specified class’s object can be cast to the instance of this Class. It returns false otherwise.
Syntax:
public boolean isAssignableFrom(Class<T> class)

Parameter: This method accepts class as parameter which is the specified class whose object to checked for compatibility to this Class instance.
Return Value: This method returns true if the specified class’s object can be cast to the instance of this Class. It returns false otherwise.
Below programs demonstrate the isAssignableFrom() method.
Example 1:
// Java program to demonstrate isAssignableFrom() method  public class Test {    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());          // get the Class instance using forName() method        Class c = Class.forName("java.lang.String");          System.out.println("Class represented by c: "                           + c.toString());          // Check if object c is compatible        // using isAssignableFrom() method        System.out.println("Is c compatible: "                           + myClass.isAssignableFrom(c));    }}
Output:
Class represented by myClass: class Test
Class represented by c: class java.lang.String
Is c compatible: false

Example 2:
// Java program to demonstrate isAssignableFrom() method  public class Test {    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());          // get the Class instance using forName() method        Class c = Class.forName("Test");          System.out.println("Class represented by c: "                           + c.toString());          // Check if object c is compatible        // using isAssignableFrom() method        System.out.println("Is c compatible: "                           + myClass.isAssignableFrom(c));    }}
Output:
Class represented by myClass: class Test
Class represented by c: class Test
Is c compatible: true

Reference: https://docs.oracle.com/javase/9/docs/api/java/lang/Class.html#isAssignableFrom-java.lang.Class-
Java-Functions
Java-lang package
Java.lang.Class
Java
Java
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
Stream In Java
Different ways of Reading a text file in Java
Constructors in Java
Exceptions in Java
Generics in Java
Functional Interfaces in Java
Comparator Interface in Java with Examples
HashMap get() Method in Java
Introduction to Java
Difference between Abstract Class and Interface in Java