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
public abstract class FieldOrMethod
- extends CPInstruction
- implements LoadClass
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 $
- See Also:
- Serialized Form
Constructor Summary |
protected |
FieldOrMethod(short opcode,
int index)
|
Methods inherited from class org.apache.bcel.generic.Instruction |
accept, consumeStack, copy, equals, getComparator, getLength, getName, getOpcode, produceStack, readInstruction, setComparator, toString |
FieldOrMethod
protected FieldOrMethod(short opcode,
int index)
- Parameters:
index
- to constant pool
getSignature
public String getSignature(ConstantPoolGen cpg)
- Returns:
- signature of referenced method/field.
getName
public String getName(ConstantPoolGen cpg)
- Returns:
- name of referenced method/field.
getClassName
public String getClassName(ConstantPoolGen cpg)
- 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
public ObjectType getClassType(ConstantPoolGen cpg)
- 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
public ReferenceType getReferenceType(ConstantPoolGen cpg)
- 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
public ObjectType getLoadClassType(ConstantPoolGen cpg)
- Description copied from interface:
LoadClass
- Returns the ObjectType of the referenced class or interface
that may be loaded and resolved.
- Specified by:
getLoadClassType
in interface LoadClass
- Returns:
- type of the referenced class/interface
Copyright © 2002-2006 Apache Software Foundation. All Rights Reserved.