- All Superinterfaces:
Accessible
,Mirror
public interface TypeComponent extends Mirror, Accessible
An entity declared within a user defined
type (class or interface).
This interface is the root of the type
component hierarchy which
includes
Field
and Method
.
Type components of the same name declared in different classes
(including those related by inheritance) have different
TypeComponent objects.
TypeComponents can be used alone to retrieve static information
about their declaration, or can be used in conjunction with a
ReferenceType
or ObjectReference
to access values
or invoke, as applicable.- Since:
- 1.3
-
Method Summary
Modifier and Type Method Description ReferenceType
declaringType()
Returns the type in which this component was declared.String
genericSignature()
Gets the generic signature for this TypeComponent if there is one.boolean
isFinal()
Determines if this TypeComponent is final.boolean
isStatic()
Determines if this TypeComponent is static.boolean
isSynthetic()
Determines if this TypeComponent is synthetic.String
name()
Gets the name of this type component.String
signature()
Gets the JNI-style signature for this type component.Methods declared in interface com.sun.jdi.Accessible
isPackagePrivate, isPrivate, isProtected, isPublic, modifiers
-
Method Details
-
name
String name()Gets the name of this type component.Note: for fields, this is the field name; for methods, this is the method name; for constructors, this is <init>; for static initializers, this is <clinit>.
- Returns:
- a string containing the name.
-
signature
String signature()Gets the JNI-style signature for this type component. The signature is encoded type information as defined in the JNI documentation. It is a convenient, compact format for for manipulating type information internally, not necessarily for display to an end user. SeeField.typeName()
andMethod.returnTypeName()
for ways to help get a more readable representation of the type.- Returns:
- a string containing the signature
- See Also:
- Type Signatures
-
genericSignature
String genericSignature()Gets the generic signature for this TypeComponent if there is one. Generic signatures are described in the The Java™ Virtual Machine Specification.- Returns:
- a string containing the generic signature, or
null
if there is no generic signature. - Since:
- 1.5
-
declaringType
ReferenceType declaringType()Returns the type in which this component was declared. The returnedReferenceType
mirrors either a class or an interface in the target VM.- Returns:
- a
ReferenceType
for the type that declared this type component.
-
isStatic
boolean isStatic()Determines if this TypeComponent is static. Return value is undefined for constructors and static initializers.- Returns:
true
if this type component was declared static; false otherwise.
-
isFinal
boolean isFinal()Determines if this TypeComponent is final. Return value is undefined for constructors and static initializers.- Returns:
true
if this type component was declared final; false otherwise.
-
isSynthetic
boolean isSynthetic()Determines if this TypeComponent is synthetic. Synthetic members are generated by the compiler and are not present in the source code for the containing class.Not all target VMs support this query. See
VirtualMachine.canGetSyntheticAttribute()
to determine if the operation is supported.- Returns:
true
if this type component is synthetic;false
otherwise.- Throws:
UnsupportedOperationException
- if the target VM cannot provide information on synthetic attributes.
-