Package org.apache.bcel.classfile
Class ExceptionTable
java.lang.Object
org.apache.bcel.classfile.Attribute
org.apache.bcel.classfile.ExceptionTable
This class represents the table of exceptions that are thrown by a method. This attribute may be used once per
method. The name of this class is ExceptionTable for historical reasons; The Java Virtual Machine
Specification, Second Edition defines this attribute using the name Exceptions (which is inconsistent with
the other classes).
Exceptions_attribute { u2 attribute_name_index; u4 attribute_length; u2 number_of_exceptions; u2 exception_index_table[number_of_exceptions]; }
- See Also:
-
Field Summary
Fields inherited from class org.apache.bcel.classfile.Attribute
constant_pool, EMPTY_ARRAY, length, name_index, tag
-
Constructor Summary
ConstructorDescriptionExceptionTable
(int nameIndex, int length, int[] exceptionIndexTable, ConstantPool constantPool) Initialize from another object. -
Method Summary
Modifier and TypeMethodDescriptionvoid
Called by objects that are traversing the nodes of the tree implicitly defined by the contents of a Java class.copy
(ConstantPool constantPool) void
dump
(DataOutputStream file) Dump exceptions attribute to file stream in binary format.int[]
String[]
int
void
setExceptionIndexTable
(int[] exceptionIndexTable) toString()
Methods inherited from class org.apache.bcel.classfile.Attribute
addAttributeReader, addAttributeReader, clone, getConstantPool, getLength, getName, getNameIndex, getTag, println, readAttribute, readAttribute, removeAttributeReader, setConstantPool, setLength, setNameIndex
-
Constructor Details
-
ExceptionTable
Initialize from another object. Note that both objects use the same references (shallow copy). Use copy() for a physical copy.- Parameters:
c
- Source to copy.
-
ExceptionTable
public ExceptionTable(int nameIndex, int length, int[] exceptionIndexTable, ConstantPool constantPool) - Parameters:
nameIndex
- Index in constant poollength
- Content length in bytesexceptionIndexTable
- Table of indices in constant poolconstantPool
- Array of constants
-
-
Method Details
-
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. -
copy
-
dump
Dump exceptions attribute to file stream in binary format.- Overrides:
dump
in classAttribute
- Parameters:
file
- Output file stream- Throws:
IOException
- if an I/O error occurs.
-
getExceptionIndexTable
- Returns:
- Array of indices into constant pool of thrown exceptions.
-
getExceptionNames
- Returns:
- class names of thrown exceptions
-
getNumberOfExceptions
- Returns:
- Length of exception table.
-
setExceptionIndexTable
- Parameters:
exceptionIndexTable
- the list of exception indexes Also redefines number_of_exceptions according to table length.
-
toString
-