Module  jdk.jdi
软件包  com.sun.jdi

Interface Field

    • 方法详细信息

      • typeName

        String typeName​()
        返回此字段类型的文本表示。 该类型是此字段声明中指定的类型。

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

        结果
        一个表示此字段类型的字符串。
      • type

        Type type​()
           throws ClassNotLoadedException
        返回此字段的类型。 该类型是此字段声明中指定的类型。

        例如,如果目标类定义:

          short s;
            Date d;
            byte[] ba; 
        而JDI客户端定义了这些Field对象:
          Field sField = targetClass.fieldByName("s");
            Field dField = targetClass.fieldByName("d");
            Field baField = targetClass.fieldByName("ba"); 
        镜像对应的字段,然后sField.type()ShortTypedField.type()ReferenceTypejava.util.Date((ArrayType)(baField.type())).componentType()ByteType

        注意:如果此字段的类型是引用类型(类,接口或数组),并且尚未由声明类型的类加载器(即declaringType() .classLoader() )创建或加载,则将抛出ClassNotLoadedException。 此外,引用类型可能已经加载但尚未准备好,在这种情况下将返回类型,但是尝试对返回类型执行某些操作(例如, fields() )将抛出一个ClassNotPreparedException 使用ReferenceType.isPrepared()来确定是否准备了引用类型。

        结果
        这个领域的Type
        异常
        ClassNotLoadedException - 如果类型尚未通过适当的类加载器加载或创建。
        另请参见:
        Type
      • isTransient

        boolean isTransient​()
        确定这是否是一个瞬态场。
        结果
        true如果这个字段是暂时的; false否则。
      • isVolatile

        boolean isVolatile​()
        确定这是否是一个易失性的领域。
        结果
        true如果这个字段是挥发性的; 否则为false
      • isEnumConstant

        boolean isEnumConstant​()
        确定这是否是一个表示枚举常数的字段。
        结果
        true如果此字段表示枚举常数; false否则。
      • equals

        boolean equals​(Object obj)
        将指定的Object与此字段进行比较以获得相等性。
        重写:
        equalsObject
        参数
        obj - 与之比较的参考对象。
        结果
        true如果对象是一个字段,并且两个镜像相同的字段(在相同的类或接口中声明在同一个VM中)。
        另请参见:
        Object.hashCode()HashMap