All Packages  Class Hierarchy  This Package  Previous  Next  Index

Class java.lang.reflect.Field

java.lang.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.

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 getDeclaringClass
 public Class getDeclaringClass()
Returns the Class object representing the class or interface that declares the field represented by this Field object.

 o getName
 public String getName()
Returns the name of the field represented by this Field object.

 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 getType
 public Class getType()
Returns a Class object that identifies the declared type for the field represented by this Field object.

 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 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 toString
 public 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
 o get
 public native 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 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 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 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 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 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 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 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 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 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

All Packages  Class Hierarchy  This Package  Previous  Next  Index

Submit a bug or feature - Version 1.1.8 of Java Platform API Specification
Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.
Copyright 1995-1999 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.