Java Field setShort()方法及实例
java.lang.reflect.Field 的 setShort() 方法是用来将一个字段的值设置为指定对象的短值。当你需要将一个对象的一个字段的值设置为短值时,你可以使用这个方法来设置一个对象的值。 语法
public void setShort(Object obj, short s)
throws IllegalArgumentException,
IllegalAccessException
参数: 该方法接受两个参数。
- obj : 对象,其字段应被修改,和
- s : 被修改的obj的字段的新值。
返回 :该方法不返回任何东西。
异常 :该方法会抛出以下异常。
- IllegalAccessException : 如果这个字段对象正在执行Java语言的访问控制,并且底层字段是不可访问的或最终的。
- IllegalArgumentException : 如果指定的对象不是声明底层字段的类或接口的实例(或其子类或实现者),或者如果解包转换失败。
- NullPoshorterException : 如果指定的对象是空的,并且该字段是一个实例字段。
- ExceptionInitializerError :如果该方法引发的初始化失败。
下面的程序说明了setShort()方法。
程序1 :
// Java program to illustrate setShort() 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 uniqueNo
System.out.println(
"Value of uniqueNo before "
+ "applying setShort is "
+ emp.uniqueNo);
// Get the field object
Field field
= Employee.class
.getField("uniqueNo");
// Apply setShort Method
field.setShort(emp, (short)134);
// print value of uniqueNo
System.out.println(
"Value of uniqueNo after "
+ "applying setShort is "
+ emp.uniqueNo);
}
}
// sample class
class Employee {
// static short values
public static short uniqueNo = 239;
}
输出
Value of uniqueNo before applying setShort is 239
Value of uniqueNo after applying setShort is 134
程序2
// Java Program to illustrate setShort() 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 setShort Method
field.setShort(no, (short)5366);
// print value of isActive
System.out.println(
"Value after "
+ "applying setShort is "
+ Numbers.value);
}
}
// sample Numbers class
class Numbers {
// static short value
public static short value = 13685;
}
输出
Value after applying setShort is 5366
参考文献 : https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/Field.html#setShort-java.lang.Object-short-