Module jdk.jdi
Package com.sun.jdi

Interface LocalVariable

所有超级接口:
Comparable<LocalVariable>, Mirror

public interface LocalVariable extends Mirror, Comparable<LocalVariable>
目标虚拟机中的本地变量。在每个在Method中声明的变量都有自己的LocalVariable对象。在不同作用域中声明的同名变量具有不同的LocalVariable对象。LocalVariables可以单独使用以检索有关其声明的静态信息,也可以与StackFrame一起使用以设置和获取值。
自版本:
1.3
参见:
  • Method Details

    • name

      String name()
      获取本地变量的名称。
      返回:
      包含名称的字符串。
    • typeName

      String typeName()
      返回此变量类型的文本表示。其中类型是此本地变量声明中指定的类型。

      即使尚未创建或加载类型,此类型名称始终可用。

      返回:
      表示此本地变量类型的字符串。
    • type

      Type type() throws ClassNotLoadedException
      返回此变量的类型。其中类型是此本地变量声明中指定的类型。

      注意: 如果此变量的类型是引用类型(类、接口或数组),并且尚未由封闭类的类加载器创建或加载,则将抛出ClassNotLoadedException。此外,引用类型可能已加载但尚未准备就绪,在这种情况下,将返回类型,但尝试对返回的类型执行某些操作(例如fields())将抛出ClassNotPreparedException。使用ReferenceType.isPrepared()来确定引用类型是否已准备就绪。

      返回:
      此本地变量的Type
      抛出:
      ClassNotLoadedException - 如果类型尚未通过适当的类加载器加载。
      参见:
    • signature

      String signature()
      获取本地变量的类型签名
      返回:
      包含签名的字符串。
    • genericSignature

      String genericSignature()
      如果存在,获取此变量的通用签名。通用签名在Java虚拟机规范中有描述。
      返回:
      包含通用签名的字符串,如果没有通用签名则返回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)
      将指定的对象与此LocalVariable进行比较以确定是否相等。
      覆盖:
      equals 在类 Object
      参数:
      obj - 用于比较的引用对象。
      返回:
      如果对象是LocalVariable,并且两个LocalVariables包含在同一个方法中(由Method.equals(java.lang.Object)确定),并且两个LocalVariables在该方法中的声明相同,则返回true。
      参见:
    • hashCode

      int hashCode()
      返回此LocalVariable的哈希码值。
      覆盖:
      hashCode 在类 Object
      返回:
      整数哈希码
      参见: