- All Superinterfaces:
Mirror
- All Known Subinterfaces:
ArrayType
,BooleanType
,ByteType
,CharType
,ClassType
,DoubleType
,FloatType
,IntegerType
,InterfaceType
,LongType
,PrimitiveType
,ReferenceType
,ShortType
,VoidType
public interface Type extends Mirror
The mirror for a type in the target VM.
This interface is the root of a type hierarchy encompassing primitive
types and reference types.
A Type may be used to represent a run-time type:
Value
.type()
or a compile-time type:
Field.type()
Method.returnType()
Method.argumentTypes()
LocalVariable.type()
ArrayType.componentType()
The following tables illustrate which subinterfaces of Type are used to mirror types in the target VM --
Type declared in target as | Is mirrored as an instance of |
---|---|
boolean |
BooleanType |
byte |
ByteType |
char |
CharType |
double |
DoubleType |
float |
FloatType |
int |
IntegerType |
long |
LongType |
short |
ShortType |
void |
VoidType |
Type declared in target as | For example | Is mirrored as an instance of |
---|---|---|
a class | Date |
ClassType |
an interface | Runnable |
InterfaceType |
an array | (any) | ArrayType |
int[] |
ArrayType whose
componentType() is
IntegerType |
|
Date[] |
ArrayType whose
componentType() is
ClassType |
|
Runnable[] |
ArrayType whose
componentType() is
InterfaceType |
-
Method Details
-
signature
String signature()Returns the JNI-style signature for this type.For primitive classes the returned signature is the signature of the corresponding primitive type; for example, "I" is returned as the signature of the class represented by
Integer.TYPE
.- Returns:
- the string containing the type signature.
- See Also:
- Type Signatures
-
name
String name()- Returns:
- a text representation of this type.
-