-
- All Superinterfaces:
-
Comparable<LocalVariable>
,Mirror
public interface LocalVariable extends Mirror, Comparable<LocalVariable>
目标VM中的本地变量。 在方法
中声明的每个变量都有自己的LocalVariable对象。 在不同范围内声明的同名变量具有不同的LocalVariable对象。 LocalVariables可以单独用于检索有关其声明的静态信息,也可以与StackFrame
结合使用来设置和获取值。- 从以下版本开始:
- 1.3
- 另请参见:
-
StackFrame
,方法
-
-
方法摘要
所有方法 实例方法 抽象方法 变量和类型 方法 描述 boolean
equals(Object obj)
将指定的Object与此LocalVariable进行相等性比较。String
genericSignature()
获取此变量的通用签名(如果有)。int
hashCode()
返回此LocalVariable的哈希码值。boolean
isArgument()
确定此变量是否是其方法的参数。boolean
isVisible(StackFrame frame)
确定是否可以从给定的StackFrame
访问此变量。String
name()
获取局部变量的名称。String
signature()
获取局部变量的JNI签名。Type
type()
返回此变量的类型。String
typeName()
返回此变量类型的文本表示形式。-
声明方法的接口 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)
-
-