Acerca de los métodos forClass, getClass y forName
En algunas aplicaciones, es imposible saber de antemano qué clase cargará el usuario, pero el usuario debe especificar el nombre de la clase para cargar la clase. Puede utilizar el método estático forName() de Class. para lograr la carga dinámica de la clase. forClass() No sé qué hace. El siguiente es un ejemplo:
import java.lang.reflect.*;
clase pública ClassDemo
{
public static void main( String[] args)
{
System.out.println("Ejemplo de ****************getClass() ** *******************\n");
String name="john";
//Obtener la clase instancia del objeto de nombre
Clase stringClass=name.getClass();
/Puede usar la instancia de stringClass para obtener la información del objeto de nombre. Puede consultar la documentación de la API allí. Aquí solo hay dos métodos
System.out.println("tipo del objeto de nombre: "+" + stringClass.getName());
System.out.println( "La clase principal del objeto de nombre:"+stringClass.getSuperclass().getName());
System.out.println("************** **forName() Ejemplo** *******************\n");
// forName()
/ /Carga dinámica de la clase java.util.ArrayList
//Carga dinámicamente la clase java.util.ArrayList.
//Obtiene la instancia de clase de la clase y usa Método de clase para obtener información relevante de la clase
// Hay muchos métodos en él, por lo que no los explicaré uno por uno. Puede consultar la documentación de la API
{
Clase c=Class forName("java.util.ArrayList");
int mod = c.getModifiers();
System.out.print(Modifier.toString(mod));
p>If (Modifier.isInterface(mod))
System.out.print (" interfaz");
De lo contrario
System.out .print(" clase ");