Clase método getDeclaredField() en Java con ejemplos

El método getDeclaredField() de la clase java.lang.Class se utiliza para obtener el campo especificado de esta clase. El método devuelve el campo especificado de esta clase en forma de objeto Field.

Sintaxis:

public Field getDeclaredField(String fieldName)
       throws NoSuchMethodException,
              SecurityException

Parámetro: este método acepta un parámetro fieldName que es el campo a obtener.

Valor devuelto: este método devuelve el campo especificado de esta clase en forma de objetos de campo.

Excepción Este método arroja:

  • NoSuchFieldException si no se encuentra un campo con el nombre especificado.
  • NullPointerException si el nombre es nulo
  • SecurityException si un administrador de seguridad está presente y no se cumplen las condiciones de seguridad.

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

    Ejemplo 1:

    // Java program to demonstrate
    // getDeclaredField() method
      
    import java.util.*;
      
    public class Test {
      
        public Object obj;
      
        public static void main(String[] args)
            throws ClassNotFoundException, NoSuchFieldException
        {
      
            // returns the Class object for this class
            Class myClass = Class.forName("Test");
      
            System.out.println("Class represented by myClass: "
                               + myClass.toString());
      
            String fieldName = "obj";
      
            // Get the field of myClass
            // using getDeclaredField() method
            System.out.println(
                fieldName + " Field of myClass: "
                + myClass.getDeclaredField(fieldName));
        }
    }
    Producción:

    Class represented by myClass: class Test
    obj Field of myClass: public java.lang.Object Test.obj
    

    Ejemplo 2:

    // Java program to demonstrate
    // getDeclaredField() method
      
    import java.util.*;
      
    class Main {
      
        private Object obj;
      
        public static void main(String[] args)
            throws ClassNotFoundException, NoSuchFieldException
        {
      
            // returns the Class object for this class
            Class myClass = Class.forName("Main");
      
            System.out.println("Class represented by myClass: "
                               + myClass.toString());
      
            String fieldName = "obj";
      
            try {
                // Get the field of myClass
                // using getDeclaredField() method
                System.out.println(
                    fieldName + " Field of myClass: "
                    + myClass.getDeclaredField(fieldName));
            }
            catch (Exception e) {
                System.out.println(e);
            }
        }
    }
    Producción:

    Class represented by myClass: class Main
    obj Field of myClass: private java.lang.Object Main.obj
    

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

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 *