- 所有超级接口:
-
Comparable<LocalVariable>,Mirror
目标虚拟机中的本地变量。在每个在
Method中声明的变量都有自己的LocalVariable对象。在不同作用域中声明的同名变量具有不同的LocalVariable对象。LocalVariables可以单独使用以检索有关其声明的静态信息,也可以与StackFrame一起使用以设置和获取值。
- 自版本:
- 1.3
- 参见:
-
Method Summary
Modifier and TypeMethodDescriptionboolean将指定的对象与此LocalVariable进行比较以确定是否相等。如果存在,获取此变量的通用签名。inthashCode()返回此LocalVariable的哈希码值。boolean确定此变量是否为其方法的参数。booleanisVisible(StackFrame frame) 确定是否可以从给定的StackFrame访问此变量。name()获取本地变量的名称。获取本地变量的类型签名。type()返回此变量的类型。typeName()返回此变量类型的文本表示。Methods declared in interface java.lang.Comparable
compareToMethods declared in interface com.sun.jdi.Mirror
toString, virtualMachine
-
Method Details
-
name
String name()获取本地变量的名称。- 返回:
- 包含名称的字符串。
-
typeName
String typeName()返回此变量类型的文本表示。其中类型是此本地变量声明中指定的类型。即使尚未创建或加载类型,此类型名称始终可用。
- 返回:
- 表示此本地变量类型的字符串。
-
type
返回此变量的类型。其中类型是此本地变量声明中指定的类型。注意: 如果此变量的类型是引用类型(类、接口或数组),并且尚未由封闭类的类加载器创建或加载,则将抛出ClassNotLoadedException。此外,引用类型可能已加载但尚未准备就绪,在这种情况下,将返回类型,但尝试对返回的类型执行某些操作(例如
fields())将抛出ClassNotPreparedException。使用ReferenceType.isPrepared()来确定引用类型是否已准备就绪。- 返回:
-
此本地变量的
Type。 - 抛出:
-
ClassNotLoadedException- 如果类型尚未通过适当的类加载器加载。 - 参见:
-
signature
String signature()获取本地变量的类型签名。- 返回:
- 包含签名的字符串。
-
genericSignature
String genericSignature()如果存在,获取此变量的通用签名。通用签名在Java虚拟机规范中有描述。- 返回:
-
包含通用签名的字符串,如果没有通用签名则返回
null。 - 自版本:
- 1.5
-
isVisible
确定是否可以从给定的StackFrame访问此变量。有关此接口中变量可见性的完整描述,请参见StackFrame.visibleVariables()。- 参数:
-
frame- 查询可见性的StackFrame - 返回:
-
如果此变量可见,则返回
true; 否则返回false。 - 抛出:
-
IllegalArgumentException- 如果堆栈帧的方法与此变量的方法不匹配。
-
isArgument
boolean isArgument()确定此变量是否为其方法的参数。- 返回:
-
如果此变量是参数,则返回
true; 否则返回false。
-
equals
将指定的对象与此LocalVariable进行比较以确定是否相等。- 覆盖:
-
equals在类Object中 - 参数:
-
obj- 用于比较的引用对象。 - 返回:
-
如果对象是LocalVariable,并且两个LocalVariables包含在同一个方法中(由
Method.equals(java.lang.Object)确定),并且两个LocalVariables在该方法中的声明相同,则返回true。 - 参见:
-
hashCode
int hashCode()返回此LocalVariable的哈希码值。
-