Package org.apache.bcel.classfile
Class Method
java.lang.Object
org.apache.bcel.classfile.AccessFlags
org.apache.bcel.classfile.FieldOrMethod
org.apache.bcel.classfile.Method
- All Implemented Interfaces:
Serializable
,Cloneable
,Node
This class represents the method info structure, i.e., the representation
for a method in the class. See JVM specification for details.
A method has access flags, a name, a signature and a number of attributes.
- See Also:
-
Field Summary
Fields inherited from class org.apache.bcel.classfile.FieldOrMethod
annotationEntries, attributes, attributes_count, constant_pool, name_index, signature_index
Fields inherited from class org.apache.bcel.classfile.AccessFlags
access_flags
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
Called by objects that are traversing the nodes of the tree implicitely defined by the contents of a Java class.final Method
copy
(ConstantPool _constant_pool) boolean
Return value as defined by given BCELComparator strategy.Type[]
final Code
getCode()
static BCELComparator
final ExceptionTable
final LineNumberTable
final LocalVariableTable
int
hashCode()
Return value as defined by given BCELComparator strategy.static void
setComparator
(BCELComparator comparator) final String
toString()
Return string representation close to declaration format, `public static void main(String[] args) throws IOException', e.g.Methods inherited from class org.apache.bcel.classfile.FieldOrMethod
addAnnotationEntry, copy_, dump, getAnnotationEntries, getAttributes, getConstantPool, getGenericSignature, getName, getNameIndex, getSignature, getSignatureIndex, setAttributes, setConstantPool, setNameIndex, setSignatureIndex
Methods inherited from class org.apache.bcel.classfile.AccessFlags
getAccessFlags, getModifiers, isAbstract, isAbstract, isAnnotation, isAnnotation, isEnum, isEnum, isFinal, isFinal, isInterface, isInterface, isNative, isNative, isPrivate, isPrivate, isProtected, isProtected, isPublic, isPublic, isStatic, isStatic, isStrictfp, isStrictfp, isSynchronized, isSynchronized, isSynthetic, isSynthetic, isTransient, isTransient, isVolatile, isVolatile, setAccessFlags, setModifiers
-
Constructor Details
-
Method
public Method()Empty constructor, all attributes have to be defined via `setXXX' methods. Use at your own risk. -
Method
Initialize from another object. Note that both objects use the same references (shallow copy). Use clone() for a physical copy. -
Method
public Method(int access_flags, int name_index, int signature_index, Attribute[] attributes, ConstantPool constant_pool) - Parameters:
access_flags
- Access rights of methodname_index
- Points to field name in constant poolsignature_index
- Points to encoded signatureattributes
- Collection of attributesconstant_pool
- Array of constants
-
-
Method Details
-
accept
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
-
getCode
- Returns:
- Code attribute of method, if any
-
getExceptionTable
- Returns:
- ExceptionTable attribute of method, if any, i.e., list all exceptions the method may throw not exception handlers!
-
getLocalVariableTable
- Returns:
- LocalVariableTable of code attribute if any, i.e. the call is forwarded to the Code atribute.
-
getLineNumberTable
- Returns:
- LineNumberTable of code attribute if any, i.e. the call is forwarded to the Code atribute.
-
toString
Return string representation close to declaration format, `public static void main(String[] args) throws IOException', e.g. -
copy
- Returns:
- deep copy of this method
-
getReturnType
- Returns:
- return type of method
-
getArgumentTypes
- Returns:
- array of method argument types
-
getComparator
- Returns:
- Comparison strategy object
-
setComparator
- Parameters:
comparator
- Comparison strategy object
-
equals
Return value as defined by given BCELComparator strategy. By default two method objects are said to be equal when their names and signatures are equal. -
hashCode
public int hashCode()Return value as defined by given BCELComparator strategy. By default return the hashcode of the method's name XOR signature. -
getParameterAnnotationEntries
- Returns:
- Annotations on the parameters of a method
-