Class FieldOrMethod

java.lang.Object
org.apache.bcel.classfile.AccessFlags
org.apache.bcel.classfile.FieldOrMethod
All Implemented Interfaces:
Cloneable, Node
Direct Known Subclasses:
Field, Method

public abstract class FieldOrMethod extends AccessFlags implements Cloneable, Node
Abstract super class for fields and methods.
  • Field Details

    • name_index

      @Deprecated protected int name_index
      Deprecated.
      (since 6.0) will be made private; do not access directly, use getter/setter
    • signature_index

      @Deprecated protected int signature_index
      Deprecated.
      (since 6.0) will be made private; do not access directly, use getter/setter
    • attributes

      @Deprecated protected Attribute[] attributes
      Deprecated.
      (since 6.0) will be made private; do not access directly, use getter/setter
    • attributes_count

      @Deprecated protected int attributes_count
      Deprecated.
      (since 6.0) will be removed (not needed)
    • constant_pool

      @Deprecated protected ConstantPool constant_pool
      Deprecated.
      (since 6.0) will be made private; do not access directly, use getter/setter
  • Constructor Details

  • Method Details

    • dump

      public final void dump(DataOutputStream file) throws IOException
      Dump object to file stream on binary format.
      Parameters:
      file - Output file stream
      Throws:
      IOException
    • getAttributes

      public final Attribute[] getAttributes()
      Returns:
      Collection of object attributes.
    • setAttributes

      public final void setAttributes(Attribute[] attributes)
      Parameters:
      attributes - Collection of object attributes.
    • getConstantPool

      public final ConstantPool getConstantPool()
      Returns:
      Constant pool used by this object.
    • setConstantPool

      public final void setConstantPool(ConstantPool constant_pool)
      Parameters:
      constant_pool - Constant pool to be used for this object.
    • getNameIndex

      public final int getNameIndex()
      Returns:
      Index in constant pool of object's name.
    • setNameIndex

      public final void setNameIndex(int name_index)
      Parameters:
      name_index - Index in constant pool of object's name.
    • getSignatureIndex

      public final int getSignatureIndex()
      Returns:
      Index in constant pool of field signature.
    • setSignatureIndex

      public final void setSignatureIndex(int signature_index)
      Parameters:
      signature_index - Index in constant pool of field signature.
    • getName

      public final String getName()
      Returns:
      Name of object, i.e., method name or field name
    • getSignature

      public final String getSignature()
      Returns:
      String representation of object's type signature (java style)
    • copy_

      protected FieldOrMethod copy_(ConstantPool _constant_pool)
      Returns:
      deep copy of this field
    • getAnnotationEntries

      public AnnotationEntry[] getAnnotationEntries()
      Returns:
      Annotations on the field or method
      Since:
      6.0
    • getGenericSignature

      public final String getGenericSignature()
      Hunts for a signature attribute on the member and returns its contents. So where the 'regular' signature may be (Ljava/util/Vector;)V the signature attribute may in fact say 'Ljava/lang/Vector<Ljava/lang/String>;' Coded for performance - searches for the attribute only when requested - only searches for it once.
      Since:
      6.0