-
- All Superinterfaces:
-
Comparable<LocalVariable>,Mirror
public interface LocalVariable extends Mirror, Comparable<LocalVariable>
目标VM中的本地变量。 在方法中声明的每个变量都有自己的LocalVariable对象。 在不同范围内声明的同名变量具有不同的LocalVariable对象。 LocalVariables可以单独用于检索有关其声明的静态信息,也可以与StackFrame结合使用来设置和获取值。- 从以下版本开始:
- 1.3
- 另请参见:
-
StackFrame,方法
-
-
方法摘要
所有方法 实例方法 抽象方法 变量和类型 方法 描述 booleanequals(Object obj)将指定的Object与此LocalVariable进行相等性比较。StringgenericSignature()获取此变量的通用签名(如果有)。inthashCode()返回此LocalVariable的哈希码值。booleanisArgument()确定此变量是否是其方法的参数。booleanisVisible(StackFrame frame)确定是否可以从给定的StackFrame访问此变量。Stringname()获取局部变量的名称。Stringsignature()获取局部变量的JNI签名。Typetype()返回此变量的类型。StringtypeName()返回此变量类型的文本表示形式。-
声明方法的接口 java.lang.Comparable
compareTo
-
声明方法的接口 com.sun.jdi.Mirror
toString, virtualMachine
-
-
-
-
方法详细信息
-
name
String name()
获取局部变量的名称。- 结果
- 包含名称的字符串。
-
typeName
String typeName()
返回此变量类型的文本表示形式。 其中type是此局部变量声明中指定的类型。即使尚未创建或加载类型,此类型名称也始终可用。
- 结果
- 表示此局部变量类型的String。
-
type
Type type() throws ClassNotLoadedException
返回此变量的类型。 其中type是此局部变量声明中指定的类型。注意:如果此变量的类型是引用类型(类,接口或数组),并且尚未由封闭类的类加载器创建或加载,则将抛出ClassNotLoadedException。 此外,引用类型可能已加载但尚未准备好,在这种情况下将返回类型,但尝试对返回的类型执行某些操作(例如
fields())将抛出ClassNotPreparedException。 使用ReferenceType.isPrepared()确定是否准备了引用类型。- 结果
-
这个局部变量的
Type。 - 异常
-
ClassNotLoadedException- 如果尚未通过适当的类加载器加载类型。 - 另请参见:
-
Type,Field.type() - for usage examples
-
signature
String signature()
获取局部变量的JNI签名。- 结果
- 包含签名的字符串。
- 另请参见:
- Type Signatures
-
genericSignature
String genericSignature()
获取此变量的通用签名(如果有)。 通用签名在The Java™ Virtual Machine Specification中描述。- 结果
-
包含通用签名的字符串,如果没有通用签名,
null。 - 从以下版本开始:
- 1.5
-
isVisible
boolean isVisible(StackFrame frame)
确定是否可以从给定的StackFrame访问此变量。 有关此接口中的完整描述变量可见性,请参见StackFrame.visibleVariables()。- 参数
-
frame- StackFrame查询可见性 - 结果
-
true如果此变量可见; 否则为false。 - 异常
-
IllegalArgumentException- 如果堆栈帧的方法与此变量的方法不匹配。
-
isArgument
boolean isArgument()
确定此变量是否是其方法的参数。- 结果
-
true如果此变量是参数; 否则为false。
-
equals
boolean equals(Object obj)
将指定的Object与此LocalVariable进行相等性比较。- 重写:
-
equals在类Object - 参数
-
obj- 要与之比较的引用对象。 - 结果
-
如果Object是LocalVariable,则为true;如果两个LocalVariables包含在同一方法中(由
Method.equals(java.lang.Object)确定),并且两个LocalVariables在该方法中镜像相同的声明 - 另请参见:
-
Object.hashCode(),HashMap
-
hashCode
int hashCode()
返回此LocalVariable的哈希码值。- 重写:
-
hashCode在类Object - 结果
- 整数哈希码
- 另请参见:
-
Object.equals(java.lang.Object),System.identityHashCode(java.lang.Object)
-
-