- java.lang.Object
-
- java.lang.Enum<StackWalker.Option>
-
- java.lang.StackWalker.Option
-
- All Implemented Interfaces:
-
Serializable
,Comparable<StackWalker.Option>
- Enclosing class:
- StackWalker
public static enum StackWalker.Option extends Enum<StackWalker.Option>
堆栈步行器选项配置stack frame获取的信息由StackWalker
。- 从以下版本开始:
- 9
-
-
Enum Constant Summary
Enum Constants Enum Constant 描述 RETAIN_CLASS_REFERENCE
保留Class
对象在StackFrame
s走过这个StackWalker
。SHOW_HIDDEN_FRAMES
显示所有隐藏的帧。SHOW_REFLECT_FRAMES
显示所有反射帧。
-
方法摘要
所有方法 静态方法 具体的方法 Modifier and Type 方法 描述 static StackWalker.Option
valueOf(String name)
以指定的名称返回此类型的枚举常量。static StackWalker.Option[]
values()
按照它们声明的顺序返回一个包含此枚举类型常量的数组。
-
-
-
Enum Constant Detail
-
RETAIN_CLASS_REFERENCE
public static final StackWalker.Option RETAIN_CLASS_REFERENCE
保留Class
对象在StackFrame
s走过这个StackWalker
。一个
StackWalker
使用该选项配置将支持StackWalker.getCallerClass()
和StackFrame.getDeclaringClass()
。
-
SHOW_REFLECT_FRAMES
public static final StackWalker.Option SHOW_REFLECT_FRAMES
显示所有反射帧。默认情况下,反射框被隐藏。 一个
StackWalker
这种配置SHOW_REFLECT_FRAMES
选项将显示所有的反射框架,其中包括Method.invoke(java.lang.Object, java.lang.Object...)
和Constructor.newInstance(Object...)
及其反射实现类。SHOW_HIDDEN_FRAMES
选项也可用于显示所有反射帧,并且还将显示其他特定于实现的隐藏帧。- API Note:
-
此选项包括代表调用
方法
和Constructor
的堆栈帧。 任何相当于调用Method.invoke
或Constructor.newInstance
例如Class.newInstance
实用程序方法都不会被任何堆栈行走选项过滤或控制。
-
SHOW_HIDDEN_FRAMES
public static final StackWalker.Option SHOW_HIDDEN_FRAMES
显示所有隐藏的帧。除了reflection frames之外,Java虚拟机实现可能会隐藏实现特定的帧。 A
StackWalker
与此SHOW_HIDDEN_FRAMES
选项将显示所有隐藏的帧(包括反射帧)。
-
-
方法详细信息
-
values
public static StackWalker.Option[] values()
按照它们声明的顺序返回一个包含此枚举类型常量的数组。 该方法可用于遍历常量如下:for (StackWalker.Option c : StackWalker.Option.values()) System.out.println(c);
- 结果
- 一个包含这个枚举类型的常量的数组,按照它们被声明的顺序
-
valueOf
public static StackWalker.Option valueOf(String name)
以指定的名称返回此类型的枚举常量。 字符串必须完全匹配用于声明此类型的枚举常量的标识符。 (不允许使用外来空白字符。)- 参数
-
name
- 要返回的枚举常量的名称。 - 结果
- 具有指定名称的枚举常数
- 异常
-
IllegalArgumentException
- 如果此枚举类型没有指定名称的常量 -
NullPointerException
- 如果参数为null
-
-