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
This class represents the method info structure, that is, 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.
-
Field Summary
FieldsFields inherited from class org.apache.bcel.classfile.FieldOrMethod
attributes, attributes_count, constant_pool, name_index, signature_indexFields inherited from class org.apache.bcel.classfile.AccessFlags
access_flags -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidCalled by objects that are traversing the nodes of the tree implicitly defined by the contents of a Java class.copy(ConstantPool constantPool) Creates a deep copy of this method.booleanReturn value as defined by given BCELComparator strategy.Type[]Gets array of method argument types.getCode()Gets Code attribute of method, if any.static BCELComparator<Method> Gets the comparison strategy object.Gets ExceptionTable attribute of method, if any.Gets LineNumberTable of code attribute if any.Gets LocalVariableTable of code attribute if any.Gets the local variable type table attributeLocalVariableTypeTable.Gets Annotations on the parameters of a method.Gets return type of method.inthashCode()Return value as defined by given BCELComparator strategy.static voidsetComparator(BCELComparator<Method> comparator) Sets the comparison strategy object.toString()Return string representation close to declaration format, 'public static void main(String[] args) throws IOException', for example.Methods inherited from class org.apache.bcel.classfile.FieldOrMethod
copy_, dump, getAnnotationEntries, getAttribute, getAttributes, getConstantPool, getGenericSignature, getName, getNameIndex, getSignature, getSignatureIndex, setAttributes, setConstantPool, setNameIndex, setSignatureIndexMethods 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, isVarArgs, isVarArgs, isVolatile, isVolatile, setAccessFlags, setModifiers
-
Field Details
-
EMPTY_ARRAY
Empty array constant.- Since:
- 6.6.0
-
-
Constructor Details
-
Method
public Method()Empty constructor, all attributes have to be defined via 'setXXX' methods. Use at your own risk. -
Method
public Method(int accessFlags, int nameIndex, int signatureIndex, Attribute[] attributes, ConstantPool constantPool) Constructs a Method.- Parameters:
accessFlags- Access rights of method.nameIndex- Points to field name in constant pool.signatureIndex- Points to encoded signature.attributes- Collection of attributes.constantPool- Array of constants.
-
Method
Initialize from another object. Note that both objects use the same references (shallow copy). Use clone() for a physical copy.- Parameters:
c- Source to copy.
-
-
Method Details
-
getComparator
Gets the comparison strategy object.- Returns:
- Comparison strategy object.
-
setComparator
Sets the comparison strategy object.- Parameters:
comparator- Comparison strategy object.
-
accept
Called by objects that are traversing the nodes of the tree implicitly 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.
-
copy
Creates a deep copy of this method.- Parameters:
constantPool- The constant pool.- Returns:
- deep copy of this method.
-
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. -
getArgumentTypes
Gets array of method argument types.- Returns:
- array of method argument types.
-
getCode
Gets Code attribute of method, if any.- Returns:
- Code attribute of method, if any.
-
getExceptionTable
Gets ExceptionTable attribute of method, if any.- Returns:
- ExceptionTable attribute of method, if any, that is, list all exceptions the method may throw not exception handlers.
-
getLineNumberTable
Gets LineNumberTable of code attribute if any.- Returns:
- LineNumberTable of code attribute if any, for example the call is forwarded to the Code attribute.
-
getLocalVariableTable
Gets LocalVariableTable of code attribute if any.- Returns:
- LocalVariableTable of code attribute if any, for example the call is forwarded to the Code attribute.
-
getLocalVariableTypeTable
Gets the local variable type table attributeLocalVariableTypeTable.- Returns:
- LocalVariableTypeTable of code attribute if any, for example the call is forwarded to the Code attribute.
- Since:
- 6.10.0
-
getParameterAnnotationEntries
Gets Annotations on the parameters of a method.- Returns:
- Annotations on the parameters of a method.
- Since:
- 6.0
-
getReturnType
Gets return type of method.- Returns:
- return type of method.
-
hashCode
Return value as defined by given BCELComparator strategy. By default return the hash code of the method's name XOR signature. -
toString
Return string representation close to declaration format, 'public static void main(String[] args) throws IOException', for example.
-