Package org.apache.bcel.classfile
Class Constant
java.lang.Object
org.apache.bcel.classfile.Constant
- Direct Known Subclasses:
ConstantClass,ConstantCP,ConstantDouble,ConstantFloat,ConstantInteger,ConstantLong,ConstantMethodHandle,ConstantMethodType,ConstantModule,ConstantNameAndType,ConstantPackage,ConstantString,ConstantUtf8
Abstract superclass for classes to represent the different constant types in the constant pool of a class file. The
classes keep closely to the JVM specification.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected byteDeprecated.(since 6.0) will be made private; do not access directly, use getter/setter. -
Method Summary
Modifier and TypeMethodDescriptionabstract voidCalled by objects that are traversing the nodes of the tree implicitly defined by the contents of a Java class.clone()copy()Creates a deep copy of this constant.abstract voiddump(DataOutputStream file) Dumps constant to file stream in binary format.booleanReturns value as defined by given BCELComparator strategy.static BCELComparator<Constant> Gets the comparison strategy object.final bytegetTag()Gets the tag of constant.inthashCode()Returns value as defined by given BCELComparator strategy.static ConstantreadConstant(DataInput dataInput) Reads one constant from the given input, the type depends on a tag byte.static voidsetComparator(BCELComparator<Constant> comparator) Sets the comparison strategy object.toString()
-
Field Details
-
tag
Deprecated.(since 6.0) will be made private; do not access directly, use getter/setter.
-
-
Method Details
-
getComparator
Gets the comparison strategy object.- Returns:
- Comparison strategy object.
-
readConstant
Reads one constant from the given input, the type depends on a tag byte.- Parameters:
dataInput- Input stream.- Returns:
- Constant object.
- Throws:
IOException- Thrown if an I/O error occurs reading from the givendataInput.ClassFormatException- Thrown if the next byte is not recognized- Since:
- 6.0 made public
-
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. -
clone
-
copy
Creates a deep copy of this constant.- Returns:
- deep copy of this constant.
-
dump
Dumps constant to file stream in binary format.- Parameters:
file- The output stream.- Throws:
IOException- Thrown if an I/O error occurs.
-
equals
Returns value as defined by given BCELComparator strategy. By default two Constant objects are said to be equal when the result of toString() is equal. -
getTag
Gets the tag of constant.- Returns:
- Tag of constant, that is, its type. No setTag() method to avoid confusion.
-
hashCode
Returns value as defined by given BCELComparator strategy. By default return the hash code of the result of toString(). -
toString
-