Método Field setLong() en Java con ejemplos

método setLong() de java.lang.reflect.Field utilizado para establecer el valor de un campo como largo en el objeto especificado. Cuando necesite establecer el valor de un campo de un objeto, puede usar este método para establecer el valor sobre un objeto. 

Sintaxis:

public void setLong(Object obj, long l)
            throws IllegalArgumentException,
                   IllegalAccessException

Parámetros: Este método acepta dos parámetros:

  • obj : que es el objeto cuyo campo se debe modificar y
  • l : que es el nuevo valor para el campo de obj que se modifica.

Retorno : este método no devuelve nada. 

Excepción : este método arroja la siguiente excepción:

  • IllegalAccessException: si este objeto de campo aplica el control de acceso del lenguaje Java y el campo subyacente es inaccesible o definitivo.
  • IllegalArgumentException: si el objeto especificado no es una instancia de la clase o interfaz que declara el campo subyacente (o una subclase o implementador de la misma), o si falla una conversión de desempaquetado.
  • NullPolongerException: si el objeto especificado es nulo y el campo es un campo de instancia.
  • ExceptionInInitializerError: si falla la inicialización provocada por este método.

Los siguientes programas ilustran el método setLong(): 

Programa 1: 

Java

// Java program to illustrate setLong() method
 
import java.lang.reflect.Field;
 
public class GFG {
 
    public static void main(String[] args)
        throws Exception
    {
 
        // create user object
        Employee emp = new Employee();
 
        // print value of salary
        System.out.prlongln(
            "Value of salary before "
            + "applying setLong is "
            + emp.salary);
 
        // Get the  field object
        Field field = Employee.class.getField("salary");
 
        // Apply setLong Method
        field.setLong(emp, 10000000);
 
        // print value of salary
        System.out.prlongln(
            "Value of salary after "
            + "applying setLong is "
            + emp.salary);
 
        // prlong value of uniqueNo
        System.out.prlongln(
            "Value of uniqueNo before "
            + "applying setLong is "
            + emp.uniqueNo);
 
        // Get the field object
        field = Employee.class.getField("uniqueNo");
 
        // Apply setLong Method
        field.setLong(emp, 200000);
 
        // prlong value of uniqueNo
        System.out.prlongln(
            "Value of uniqueNo after "
            + "applying setLong is "
            + emp.uniqueNo);
    }
}
 
// sample class
class Employee {
 
    // static long values
    public static long uniqueNo = 234289;
    public static long salary = 1125213;
}
Producción:

Value of salary before applying setLong is 1234567
Value of salary after applying setLong is 10000000
Value of uniqueNo before applying setLong is 234289
Value of uniqueNo after applying setLong is 2000000

Programa 2: 

Java

// Java program to illustrate setLong() method
 
import java.lang.reflect.Field;
 
public class GFG {
 
    public static void main(String[] args)
        throws Exception
    {
 
        // create Numbers object
        Numbers no = new Numbers();
 
        // Get the value field object
        Field field = Numbers.class
                          .getField("value");
 
        // Apply setLong Method
        field.setLong(no, 36283435);
 
        // prlong value of isActive
        System.out.prlongln(
            "Value after "
            + "applying setLong is "
            + Numbers.value);
    }
}
 
// sample Numbers class
class Numbers {
 
    // static long value
    public static long value = 121314454;
}
Producción:

Value after applying setLong is 36283435

Referencia: https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/Field.html#setLong-java.lang.Object-long-

Publicación traducida automáticamente

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