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
ConstructorsConstructorDescriptionExceptionTable(int nameIndex, int length, int[] exceptionIndexTable, ConstantPool constantPool) Initialize from another object. -
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) voiddump(DataOutputStream file) Dump exceptions attribute to file stream in binary format.int[]String[]intvoidsetExceptionIndexTable(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:
dumpin 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
-