de.fub.bytecode.classfile
Class Field

java.lang.Object
  |
  +--de.fub.bytecode.classfile.AccessFlags
        |
        +--de.fub.bytecode.classfile.FieldOrMethod
              |
              +--de.fub.bytecode.classfile.Field
All Implemented Interfaces:
java.lang.Cloneable, Node

public final class Field
extends FieldOrMethod

This class represents the field info structure, i.e., the representation for a variable in the class. See JVM specification for details.

Version:
$Id: Field.java,v 1.4 2001/05/31 08:35:58 dahm Exp $
Author:
M. Dahm

Fields inherited from class de.fub.bytecode.classfile.FieldOrMethod
attributes, attributes_count, constant_pool, name_index, signature_index
 
Fields inherited from class de.fub.bytecode.classfile.AccessFlags
access_flags
 
Constructor Summary
Field(Field c)
          Initialize from another object.
Field(int access_flags, int name_index, int signature_index, Attribute[] attributes, ConstantPool constant_pool)
           
 
Method Summary
 void accept(Visitor v)
          Called by objects that are traversing the nodes of the tree implicitely defined by the contents of a Java class.
 Field copy(ConstantPool constant_pool)
           
 ConstantValue getConstantValue()
           
 java.lang.String toString()
          Return string representation close to declaration format, `public static final short MAX = 100', e.g..
 
Methods inherited from class de.fub.bytecode.classfile.FieldOrMethod
copy_, dump, getAttributes, getConstantPool, getName, getNameIndex, getSignature, getSignatureIndex, setAttributes, setConstantPool, setNameIndex, setSignatureIndex
 
Methods inherited from class de.fub.bytecode.classfile.AccessFlags
getAccessFlags, isAbstract, isAbstract, isFinal, isFinal, isInterface, isInterface, isNative, isNative, isPrivate, isPrivate, isProtected, isProtected, isPublic, isPublic, isStatic, isStatic, isStrictfp, isStrictfp, isSynchronized, isSynchronized, isTransient, isTransient, isVolatile, isVolatile, setAccessFlags
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Field

public Field(Field c)
Initialize from another object. Note that both objects use the same references (shallow copy). Use clone() for a physical copy.

Field

public Field(int access_flags,
             int name_index,
             int signature_index,
             Attribute[] attributes,
             ConstantPool constant_pool)
Parameters:
access_flags - Access rights of field
name_index - Points to field name in constant pool
signature_index - Points to encoded signature
attributes - Collection of attributes
constant_pool - Array of constants
Method Detail

accept

public void accept(Visitor v)
Called by objects that are traversing the nodes of the tree implicitely defined by the contents of a Java class. I.e., the hierarchy of methods, fields, attributes, etc. spawns a tree of objects.
Parameters:
v - Visitor object

getConstantValue

public final ConstantValue getConstantValue()
Returns:
constant value associated with this field (may be null)

toString

public final java.lang.String toString()
Return string representation close to declaration format, `public static final short MAX = 100', e.g..
Overrides:
toString in class java.lang.Object
Returns:
String representation of field, including the signature.

copy

public final Field copy(ConstantPool constant_pool)
Returns:
deep copy of this field