Método Field setByte() en Java con ejemplos

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

public void setByte(Object obj, byte b)
            throws IllegalArgumentException,
                   IllegalAccessException

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

  • obj : que es el objeto cuyo campo se debe modificar y
  • b : que es el nuevo valor para el campo de obj que se está modificando.

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.
  • NullPointerException: 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 setByte(): Programa 1: 

Java

// Java program to illustrate setByte() 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 leaveLeft
        System.out.println(
            "Value of leaveLeft before "
            + "applying setByte is "
            + emp.leaveLeft);
 
        // Get the marks field object
        Field field
            = Employee.class
                  .getField("leaveLeft");
 
        // Apply setByte Method
        field.setByte(emp, (byte)2);
 
        // print value of leaveLeft
        System.out.println(
            "Value of leaveLeft after "
            + "applying setByte is "
            + emp.leaveLeft);
 
        // print value of age
        System.out.println(
            "Value of age before "
            + "applying setByte is "
            + emp.age);
 
        // Get the marks field object
        field = Employee.class.getField("age");
 
        // Apply setByte Method
        field.setByte(emp, (byte)56);
 
        // print value of age
        System.out.println(
            "Value of age after "
            + "applying setByte is "
            + emp.age);
    }
}
 
// sample class
class Employee {
 
    // static byte values
    public static byte age = 45;
    public static byte leaveLeft = 12;
}
Producción:

Value of leaveLeft before applying setByte is 12
Value of leaveLeft after applying setByte is 2
Value of age before applying setByte is 45
Value of age after applying setByte is 56

Programa 2: 

Java

// Java program to illustrate setByte() method
 
import java.lang.reflect.Field;
 
public class GFG {
 
    public static void main(String[] args)
        throws Exception
    {
 
        // create user object
        User user = new User();
 
        // Get the id field object
        Field field = User.class
                          .getField("id");
 
        // Apply setByte Method
        field.setByte(user, (byte)20);
 
        // print value of isActive
        System.out.println(
            "Value after "
            + "applying setByte is "
            + user.id);
    }
}
 
// sample User class
class User {
 
    // static byte values
    public static byte id = 2;
}
Producción:

Value after applying setByte is 20

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

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 *