org.apache.bcel.classfile

Class Method

public final class Method extends FieldOrMethod

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.

Version: $Id: Method.java 152843 2002-12-08 16:04:38Z mdahm $

Author: M. Dahm

Constructor Summary
Method()
Empty constructor, all attributes have to be defined via `setXXX' methods.
Method(Method c)
Initialize from another object.
Method(int access_flags, int name_index, int signature_index, Attribute[] attributes, ConstantPool constant_pool)
Method Summary
voidaccept(Visitor v)
Called by objects that are traversing the nodes of the tree implicitely defined by the contents of a Java class.
Methodcopy(ConstantPool constant_pool)
Type[]getArgumentTypes()
CodegetCode()
ExceptionTablegetExceptionTable()
LineNumberTablegetLineNumberTable()
LocalVariableTablegetLocalVariableTable()
TypegetReturnType()
StringtoString()
Return string representation close to declaration format, `public static void main(String[] args) throws IOException', e.g.

Constructor Detail

Method

public Method()
Empty constructor, all attributes have to be defined via `setXXX' methods. Use at your own risk.

Method

public Method(Method c)
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 method 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

copy

public final Method copy(ConstantPool constant_pool)

Returns: deep copy of this method

getArgumentTypes

public Type[] getArgumentTypes()

Returns: array of method argument types

getCode

public final Code getCode()

Returns: Code attribute of method, if any

getExceptionTable

public final ExceptionTable getExceptionTable()

Returns: ExceptionTable attribute of method, if any, i.e., list all exceptions the method may throw not exception handlers!

getLineNumberTable

public final LineNumberTable getLineNumberTable()

Returns: LineNumberTable of code attribute if any, i.e. the call is forwarded to the Code atribute.

getLocalVariableTable

public final LocalVariableTable getLocalVariableTable()

Returns: LocalVariableTable of code attribute if any, i.e. the call is forwarded to the Code atribute.

getReturnType

public Type getReturnType()

Returns: return type of method

toString

public final String toString()
Return string representation close to declaration format, `public static void main(String[] args) throws IOException', e.g.

Returns: String representation of the method.