Método Class isAssignableFrom() en Java con ejemplos

El método isAssignableFrom() de la clase java.lang.Class se utiliza para comprobar si el objeto de la clase especificada es compatible para ser asignado a la instancia de esta clase. Será compatible si ambas clases son iguales o si la clase especificada es una superclase o una superinterfaz. El método devuelve verdadero si el objeto de la clase especificada se puede convertir a la instancia de esta clase. Devuelve false en caso contrario.

Sintaxis:

public boolean isAssignableFrom(Class<T> class)

Parámetro: este método acepta la clase como parámetro, que es la clase especificada cuyo objeto se comprueba para compatibilidad con esta instancia de clase.

Valor de retorno: este método devuelve verdadero si el objeto de la clase especificada se puede convertir en la instancia de esta clase. Devuelve false en caso contrario.

Los siguientes programas muestran el método isAssignableFrom().

Ejemplo 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));
    }
}

Producción:

Class represented by myClass: class Test
Class represented by c: class java.lang.String
Is c compatible: false

Ejemplo 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));
    }
}

Producción:

Class represented by myClass: class Test
Class represented by c: class Test
Is c compatible: true

Referencia: https://docs.oracle.com/javase/9/docs/api/java/lang/Class.html#isAssignableFrom-java.lang.Class-

Publicación traducida automáticamente

Artículo escrito por srinam y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *