Class java.lang.reflect.Field
All Packages  Class Hierarchy  This Package  Previous  Next  Index

Class java.lang.reflect.Field

Object
   |
   +----java.lang.reflect.Field

public final class Field
extends Object
implements Member
A Field provides information about, and dynamic access to, a single field of a class or an interface. The reflected field may be a class (static) field or an instance field.

A Field permits widening conversions to occur during a get or set access operation, but throws an IllegalArgumentException if a narrowing conversion would occur.

Author:
Nakul Saraiya
See Also:
Member, Class, getFields(), getField(), getDeclaredFields(), getDeclaredField()

Method Index

 o equals(Object)
Compares this Field against the specified object.
 o get(Object)
Returns the value of the field represented by this Field, on the specified object.
 o getBoolean(Object)
Get the value of a field as a boolean on specified object.
 o getByte(Object)
Get the value of a field as a byte on specified object.
 o getChar(Object)
Get the value of a field as a char on specified object.
 o getDeclaringClass()
Returns the Class object representing the class or interface that declares the field represented by this Field object.
 o getDouble(Object)
Get the value of a field as a double on specified object.
 o getFloat(Object)
Get the value of a field as a float on specified object.
 o getInt(Object)
Get the value of a field as a int on specified object.
 o getLong(Object)
Get the value of a field as a long on specified object.
 o getModifiers()
Returns the Java language modifiers for the field represented by this Field object, as an integer.
 o getName()
Returns the name of the field represented by this Field object.
 o getShort(Object)
Get the value of a field as a short on specified object.
 o getType()
Returns a Class object that identifies the declared type for the field represented by this Field object.
 o hashCode()
Returns a hashcode for this Field.
 o set(Object, Object)
Sets the field represented by this Field object on the specified object argument to the specified new value.
 o setBoolean(Object, boolean)
Set the value of a field as a boolean on specified object.
 o setByte(Object, byte)
Set the value of a field as a byte on specified object.
 o setChar(Object, char)
Set the value of a field as a char on specified object.
 o setDouble(Object, double)
Set the value of a field as a double on specified object.
 o setFloat(Object, float)
Set the value of a field as a float on specified object.
 o setInt(Object, int)
Set the value of a field as an int on specified object.
 o setLong(Object, long)
Set the value of a field as a long on specified object.
 o setShort(Object, short)
Set the value of a field as a short on specified object.
 o toString()
Return a string describing this Field.

Methods

 o equals
public boolean equals(Object obj)
Compares this Field against the specified object. Returns true if the objects are the same. Two Fields are the same if they were declared by the same class and have the same name and type.

Overrides:
equals in class Object
 o get
public native java.lang.Object get(Object obj) throws IllegalArgumentException, IllegalAccessException
Returns the value of the field represented by this Field, on the specified object. The value is automatically wrapped in an object if it has a primitive type.

The underlying field's value is obtained as follows:

If the underlying field is a static field, the object argument is ignored; it may be null.

Otherwise, the underlying field is an instance field. If the specified object argument is null, the method throws a NullPointerException. If the specified object is not an instance of the class or interface declaring the underlying field, the method throws an IllegalArgumentException.

If this Field object enforces Java language access control, and the underlying field is inaccessible, the method throws an IllegalAccessException.

Otherwise, the value is retrieved from the underlying instance or static field. If the field has a primitive type, the value is wrapped in an object before being returned, otherwise it is returned as is.

Throws: IllegalAccessException
if the underlying constructor is inaccessible.
Throws: IllegalArgumentException
if the specified object is not an instance of the class or interface declaring the underlying field.
Throws: NullPointerException
if the specified object is null.
 o getBoolean
public native boolean getBoolean(Object obj) throws IllegalArgumentException, IllegalAccessException
Get the value of a field as a boolean on specified object.

Throws: IllegalAccessException
if the underlying constructor is inaccessible.
Throws: IllegalArgumentException
if the field value cannot be converted to the return type by a widening conversion.
See Also:
get
 o getByte
public native byte getByte(Object obj) throws IllegalArgumentException, IllegalAccessException
Get the value of a field as a byte on specified object.

Throws: IllegalAccessException
if the underlying constructor is inaccessible.
Throws: IllegalArgumentException
if the field value cannot be converted to the return type by a widening conversion.
See Also:
get
 o getChar
public native char getChar(Object obj) throws IllegalArgumentException, IllegalAccessException
Get the value of a field as a char on specified object.

Throws: IllegalAccessException
if the underlying constructor is inaccessible.
Throws: IllegalArgumentException
if the field value cannot be converted to the return type by a widening conversion.
See Also:
get
 o getDeclaringClass
public java.lang.Class getDeclaringClass()
Returns the Class object representing the class or interface that declares the field represented by this Field object.

 o getDouble
public native double getDouble(Object obj) throws IllegalArgumentException, IllegalAccessException
Get the value of a field as a double on specified object.

Throws: IllegalAccessException
if the underlying constructor is inaccessible.
Throws: IllegalArgumentException
if the field value cannot be converted to the return type by a widening conversion.
See Also:
get
 o getFloat
public native float getFloat(Object obj) throws IllegalArgumentException, IllegalAccessException
Get the value of a field as a float on specified object.

Throws: IllegalAccessException
if the underlying constructor is inaccessible.
Throws: IllegalArgumentException
if the field value cannot be converted to the return type by a widening conversion.
See Also:
get
 o getInt
public native int getInt(Object obj) throws IllegalArgumentException, IllegalAccessException
Get the value of a field as a int on specified object.

Throws: IllegalAccessException
if the underlying constructor is inaccessible.
Throws: IllegalArgumentException
if the field value cannot be converted to the return type by a widening conversion.
See Also:
get
 o getLong
public native long getLong(Object obj) throws IllegalArgumentException, IllegalAccessException
Get the value of a field as a long on specified object.

Throws: IllegalAccessException
if the underlying constructor is inaccessible.
Throws: IllegalArgumentException
if the field value cannot be converted to the return type by a widening conversion.
See Also:
get
 o getModifiers
public native int getModifiers()
Returns the Java language modifiers for the field represented by this Field object, as an integer. The Modifier class should be used to decode the modifiers.

See Also:
Modifier
 o getName
public java.lang.String getName()
Returns the name of the field represented by this Field object.

 o getShort
public native short getShort(Object obj) throws IllegalArgumentException, IllegalAccessException
Get the value of a field as a short on specified object.

Throws: IllegalAccessException
if the underlying constructor is inaccessible.
Throws: IllegalArgumentException
if the field value cannot be converted to the return type by a widening conversion.
See Also:
get
 o getType
public java.lang.Class getType()
Returns a Class object that identifies the declared type for the field represented by this Field object.

 o hashCode
public int hashCode()
Returns a hashcode for this Field. This is computed as the exclusive-or of the hashcodes for the underlying field's declaring class name and its name.

Overrides:
hashCode in class Object
 o set
public native void set(Object obj,
                       Object value) throws IllegalArgumentException, IllegalAccessException
Sets the field represented by this Field object on the specified object argument to the specified new value. The new value is automatically unwrapped if the underlying field has a primitive type.

The operation proceeds as follows:

If the underlying field is static, the object argument is ignored; it may be null.

Otherwise the underlying field is an instance field. If the specified object argument is null, the method throws a NullPointerException. If the specified object argument is not an instance of the class or interface declaring the underlying field, the method throws an IllegalArgumentException.

If this Field object enforces Java language access control, and the underlying field is inaccessible, the method throws an IllegalAccessException.

If the underlying field is final, the method throws an IllegalAccessException.

If the underlying field is of a primitive type, an unwrapping conversion is attempted to convert the new value to a value of a primitive type. If this attempt fails, the method throws an IllegalArgumentException.

If, after possible unwrapping, the new value cannot be converted to the type of the underlying field by an identity or widening conversion, the method throws an IllegalArgumentException.

The field is set to the possibly unwrapped and widened new value.

Throws: IllegalAccessException
if the underlying constructor is inaccessible.
Throws: IllegalArgumentException
if the specified object is not an instance of the class or interface declaring the underlying field, or if an unwrapping conversion fails.
Throws: NullPointerException
if the specified object is null.
 o setBoolean
public native void setBoolean(Object obj,
                              boolean z) throws IllegalArgumentException, IllegalAccessException
Set the value of a field as a boolean on specified object.

Throws: IllegalAccessException
if the underlying constructor is inaccessible.
Throws: IllegalArgumentException
if the specified object is not an instance of the class or interface declaring the underlying field, or if an unwrapping conversion fails.
See Also:
set
 o setByte
public native void setByte(Object obj,
                           byte b) throws IllegalArgumentException, IllegalAccessException
Set the value of a field as a byte on specified object.

Throws: IllegalAccessException
if the underlying constructor is inaccessible.
Throws: IllegalArgumentException
if the specified object is not an instance of the class or interface declaring the underlying field, or if an unwrapping conversion fails.
See Also:
set
 o setChar
public native void setChar(Object obj,
                           char c) throws IllegalArgumentException, IllegalAccessException
Set the value of a field as a char on specified object.

Throws: IllegalAccessException
if the underlying constructor is inaccessible.
Throws: IllegalArgumentException
if the specified object is not an instance of the class or interface declaring the underlying field, or if an unwrapping conversion fails.
See Also:
set
 o setDouble
public native void setDouble(Object obj,
                             double d) throws IllegalArgumentException, IllegalAccessException
Set the value of a field as a double on specified object.

Throws: IllegalAccessException
if the underlying constructor is inaccessible.
Throws: IllegalArgumentException
if the specified object is not an instance of the class or interface declaring the underlying field, or if an unwrapping conversion fails.
See Also:
set
 o setFloat
public native void setFloat(Object obj,
                            float f) throws IllegalArgumentException, IllegalAccessException
Set the value of a field as a float on specified object.

Throws: IllegalAccessException
if the underlying constructor is inaccessible.
Throws: IllegalArgumentException
if the specified object is not an instance of the class or interface declaring the underlying field, or if an unwrapping conversion fails.
See Also:
set
 o setInt
public native void setInt(Object obj,
                          int i) throws IllegalArgumentException, IllegalAccessException
Set the value of a field as an int on specified object.

Throws: IllegalAccessException
if the underlying constructor is inaccessible.
Throws: IllegalArgumentException
if the specified object is not an instance of the class or interface declaring the underlying field, or if an unwrapping conversion fails.
See Also:
set
 o setLong
public native void setLong(Object obj,
                           long l) throws IllegalArgumentException, IllegalAccessException
Set the value of a field as a long on specified object.

Throws: IllegalAccessException
if the underlying constructor is inaccessible.
Throws: IllegalArgumentException
if the specified object is not an instance of the class or interface declaring the underlying field, or if an unwrapping conversion fails.
See Also:
set
 o setShort
public native void setShort(Object obj,
                            short s) throws IllegalArgumentException, IllegalAccessException
Set the value of a field as a short on specified object.

Throws: IllegalAccessException
if the underlying constructor is inaccessible.
Throws: IllegalArgumentException
if the specified object is not an instance of the class or interface declaring the underlying field, or if an unwrapping conversion fails.
See Also:
set
 o toString
public java.lang.String toString()
Return a string describing this Field. The format is the access modifiers for the field, if any, followed by the field type, followed by a space, followed by the fully-qualified name of the class declaring the field, followed by a period, followed by the name of the field. For example:
    public static final int java.lang.Thread.MIN_PRIORITY
    private int java.io.FileDescriptor.fd
 

The modifiers are placed in canonical order as specified by "The Java Language Specification". This is public, protected or private first, and then other modifiers in the following order: static, final, transient, volatile.

Overrides:
toString in class Object

All Packages  Class Hierarchy  This Package  Previous  Next  Index