public abstract class ClassMember extends AbstractStructureWithAttributes implements AccessFlags
Modifier and Type | Field and Description |
---|---|
protected int |
accessFlags
The access flags of this class member.
|
protected int |
descriptorIndex
the constant pool index of the descriptor of this class member.
|
protected int |
nameIndex
the constant pool index of the name of this class member.
|
attributes
classFile, debug, SYSTEM_PROPERTY_DEBUG
ACC_ABSTRACT, ACC_ABSTRACT_VERBOSE, ACC_ANNOTATION, ACC_ANNOTATION_VERBOSE, ACC_BRIDGE, ACC_BRIDGE_VERBOSE, ACC_ENUM, ACC_ENUM_VERBOSE, ACC_FINAL, ACC_FINAL_VERBOSE, ACC_INTERFACE, ACC_INTERFACE_VERBOSE, ACC_NATIVE, ACC_NATIVE_VERBOSE, ACC_PRIVATE, ACC_PRIVATE_VERBOSE, ACC_PROTECTED, ACC_PROTECTED_VERBOSE, ACC_PUBLIC, ACC_PUBLIC_VERBOSE, ACC_STATIC, ACC_STATIC_VERBOSE, ACC_STRICT, ACC_STRICT_VERBOSE, ACC_SUPER, ACC_SUPER_VERBOSE, ACC_SYNCHRONIZED, ACC_SYNCHRONIZED_VERBOSE, ACC_SYNTHETIC, ACC_SYNTHETIC_VERBOSE, ACC_TRANSIENT, ACC_TRANSIENT_VERBOSE, ACC_VARARGS, ACC_VARARGS_VERBOSE, ACC_VOLATILE, ACC_VOLATILE_VERBOSE, CLASS_ACCESS_FLAGS, CLASS_ACCESS_FLAGS_VERBOSE, FIELD_ACCESS_FLAGS, FIELD_ACCESS_FLAGS_VERBOSE, INNER_CLASS_ACCESS_FLAGS, INNER_CLASS_ACCESS_FLAGS_VERBOSE, METHOD_ACCESS_FLAGS, METHOD_ACCESS_FLAGS_VERBOSE
Constructor and Description |
---|
ClassMember() |
Modifier and Type | Method and Description |
---|---|
int |
getAccessFlags()
Get the access flags of this class member.
|
String |
getAccessFlagsVerbose()
Get the verbose description of the access flags of this class.
|
String |
getDescriptor()
Get the verbose descriptor of the class member.
|
int |
getDescriptorIndex()
Get the constant pool index of the descriptor of this class member.
|
String |
getFormattedAccessFlags()
Get the the access flags of this class as a hex string.
|
String |
getName()
Get the name of the class member.
|
int |
getNameIndex()
Get the constant pool index of the name of this class member.
|
void |
read(DataInput in)
Read this structure from the given DataInput.
|
void |
setAccessFlags(int accessFlags)
Set the access flags of this class member.
|
void |
setDescriptorIndex(int descriptorIndex)
Set the constant pool index of the descriptor of this class member.
|
void |
setNameIndex(int nameIndex)
Set the constant pool index of the name of this class member.
|
void |
write(DataOutput out)
Write this structure to the given DataOutput.
|
findAttribute, getAttributes, getTotalAttributesLength, readAttributes, setAttributes, writeAttributes
debug, getClassFile, getDebug, getLength, printAccessFlags, printAccessFlagsVerbose, printAccessFlagsVerbose, printBytes, setClassFile, setDebug
protected int accessFlags
protected int nameIndex
protected int descriptorIndex
public int getAccessFlags()
public void setAccessFlags(int accessFlags)
accessFlags
- the access flagspublic int getNameIndex()
public void setNameIndex(int nameIndex)
nameIndex
- the indexpublic int getDescriptorIndex()
public void setDescriptorIndex(int descriptorIndex)
descriptorIndex
- the indexpublic String getName() throws InvalidByteCodeException
InvalidByteCodeException
- if the entry is invalidpublic String getDescriptor() throws InvalidByteCodeException
InvalidByteCodeException
- if the entry is invalidpublic String getFormattedAccessFlags()
public String getAccessFlagsVerbose()
public void read(DataInput in) throws InvalidByteCodeException, IOException
AbstractStructure
Excpects DataInput to be in JVM class file format and just before a structure of this kind. No look ahead parsing since the class file format is deterministic.
read
in class AbstractStructure
in
- the DataInput from which to readInvalidByteCodeException
- if the byte code is invalidIOException
- if an exception occurs with the DataInputpublic void write(DataOutput out) throws InvalidByteCodeException, IOException
AbstractStructure
The written bytes are in JVM class file format.
write
in class AbstractStructure
out
- the DataOutput to which to writeInvalidByteCodeException
- if the structure is internally inconsistentIOException
- if an exception occurs with the DataOutput