Package org.apache.bcel.generic
Class FieldOrMethod
java.lang.Object
org.apache.bcel.generic.Instruction
org.apache.bcel.generic.CPInstruction
org.apache.bcel.generic.FieldOrMethod
- All Implemented Interfaces:
Serializable
,Cloneable
,IndexedInstruction
,LoadClass
,TypedInstruction
- Direct Known Subclasses:
FieldInstruction
,InvokeInstruction
Super class for InvokeInstruction and FieldInstruction, since they have
some methods in common!
- Version:
- $Id: FieldOrMethod.java 386056 2006-03-15 11:31:56Z tcurdt $
- Author:
- M. Dahm
- See Also:
-
Field Summary
Fields inherited from class org.apache.bcel.generic.CPInstruction
index
Fields inherited from class org.apache.bcel.generic.Instruction
length, opcode
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionDeprecated.If the instruction references an array class, this method will return "java.lang.Object".Deprecated.If the instruction references an array class, the ObjectType returned will be invalid.Returns the ObjectType of the referenced class or interface that may be loaded and resolved.getName
(ConstantPoolGen cpg) Return the reference type representing the class, interface, or array class referenced by the instruction.Methods inherited from class org.apache.bcel.generic.CPInstruction
dump, getIndex, getType, initFromFile, setIndex, toString, toString
Methods inherited from class org.apache.bcel.generic.Instruction
accept, consumeStack, copy, equals, getComparator, getLength, getName, getOpcode, produceStack, readInstruction, setComparator, toString
-
Constructor Details
-
FieldOrMethod
protected FieldOrMethod(short opcode, int index) - Parameters:
index
- to constant pool
-
-
Method Details
-
getSignature
- Returns:
- signature of referenced method/field.
-
getName
- Returns:
- name of referenced method/field.
-
getClassName
Deprecated.If the instruction references an array class, this method will return "java.lang.Object". For code generated by Java 1.5, this answer is sometimes wrong (e.g., if the "clone()" method is called on an array). A better idea is to use the getReferenceType() method, which correctly distinguishes between class types and array types.- Returns:
- name of the referenced class/interface
-
getClassType
Deprecated.If the instruction references an array class, the ObjectType returned will be invalid. Use getReferenceType() instead.- Returns:
- type of the referenced class/interface
-
getReferenceType
Return the reference type representing the class, interface, or array class referenced by the instruction.- Parameters:
cpg
- the ConstantPoolGen used to create the instruction- Returns:
- an ObjectType (if the referenced class type is a class or interface), or an ArrayType (if the referenced class type is an array class)
-
getLoadClassType
Description copied from interface:LoadClass
Returns the ObjectType of the referenced class or interface that may be loaded and resolved.- Specified by:
getLoadClassType
in interfaceLoadClass
- Returns:
- type of the referenced class/interface
-