Open In App

Class isAssignableFrom() method in Java with Examples

Last Updated : 27 Nov, 2019
Improve
Improve
Like Article
Like
Save
Share
Report

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-



Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads