java.lang.instrument.ClassDefinition Clase en Java

Esta clase se utiliza para vincular la clase proporcionada y los bytes del archivo de clase en un único objeto ClassDefinition. Estas clases proporcionan métodos para extraer información sobre el tipo de clase y los bytes del archivo de clase de un objeto . Esta clase es una subclase de la clase java.lang.Object .

Declaración de clase:

public final class ClassDefinition
extends Object

Constructor:

Constructor Descripción 
ClassDefinition(Class<?> theClass, byte[] theClassFile) Este constructor crea una nueva instancia de la clase ClassDefinition vinculando la clase proporcionada y los bytes del archivo de clase.

Métodos:

Método Descripción
getDefinitionClass() Este método se utiliza para obtener el tipo de clase de esta clase.
getDefinitionClassFile() Este método se utiliza para obtener la array de bytes que contiene el nuevo archivo de clase.

Ejemplo 1: programa Java para crear un nuevo objeto ClassDefinition

Java

// Java program to create new ClassDefinition object
import java.lang.instrument.ClassDefinition;
  
// driver class
public class GFG {
    // demoClass
    static class demoClass {
        void msg() { System.out.println("GeeksForGeeks"); }
    }
    // main method
    public static void main(String[] args)
    {
        try {
  
            // creating demoClass object
            demoClass cls = new demoClass();
            
            // creating object of supplied class
            Class<?> theClass = cls.getClass();
            
            // creating array of class files
            byte[] classFiles = { 0 };
            
            // creating a new ClassDefinition object
            ClassDefinition classdefinition
                = new ClassDefinition(theClass, classFiles);
            System.out.println(
                "ClassDefinition object successfully created");
        }
        catch (Exception e) {
            e.printStackTrace();
        }
    }
}
Producción

ClassDefinition object successfully created

Ejemplo 2: programa Java para ilustrar métodos de clase ClassDefinition

Java

// Java program to illustrate ClassDefinition class methods
import java.lang.instrument.ClassDefinition;
  
// driver class
public class GFG {
    
    // demoClass
    static class demoClass {
        void msg() { System.out.println("GeeksForGeeks"); }
    }
    
    // main method
    public static void main(String[] args)
    {
        try {
  
            // creating demoClass object
            demoClass cls = new demoClass();
            
            // creating object of supplied class
            Class<?> theClass = cls.getClass();
            
            // creating array of class files
            byte[] classFiles = { 0 };
            
            // creating a new ClassDefinition object
            ClassDefinition classdefinition
                = new ClassDefinition(theClass, classFiles);
            
            // printing the class
            System.out.println(
                classdefinition.getDefinitionClass());
            
            // printing array of bytes that contain class
            // files
            System.out.println(
                classdefinition.getDefinitionClassFile());
        }
        catch (Exception e) {
            e.printStackTrace();
        }
    }
}
Producción

class GFG$demoClass
[B@448139f0

Publicación traducida automáticamente

Artículo escrito por abhinavjain194 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 *