- 所有已实现的接口:
Serializable,Comparable<Snippet.Kind>,Constable
- 封闭类:
Snippet
描述一般类型的片段。
Kind 是代码段的不可变属性。它通过 Snippet.kind() 访问。 Kind 可用于确定它是 Snippet 的哪个子类。例如,eval("int three() { return 3; }") 将返回代码段创建事件。该代码段的 Kind 将是 METHOD ,从中您知道 Snippet 的子类是 MethodSnippet 并且可以这样转换。
-
内部类总结
在类 java.lang.Enum 中声明的嵌套类/接口
Enum.EnumDesc<E extends Enum<E>> -
枚举常量总结
枚举常量 -
方法总结
修饰符和类型方法描述boolean指示此 Snippet 的Kind是否持久。static Snippet.Kind返回具有指定名称的此类的枚举常量。static Snippet.Kind[]values()返回一个数组,其中包含此枚举类的常量,按照它们声明的顺序排列。
-
枚举常量详细信息
-
IMPORT
导入声明:import... 该片段是ImportSnippet的一个实例。一次导入可以是单一类型导入(
Snippet.SubKind.SINGLE_TYPE_IMPORT_SUBKIND)、静态单一导入(Snippet.SubKind.SINGLE_STATIC_IMPORT_SUBKIND)、按需类型导入(Snippet.SubKind.TYPE_IMPORT_ON_DEMAND_SUBKIND)或静态按需类型导入(Snippet.SubKind.SINGLE_STATIC_IMPORT_SUBKIND)——使用Snippet.subKind()来区分。进口申报是 persistent 。
- 看Java 语言规范:
-
7.5 进口申报
-
TYPE_DECL
类型声明。其中包括:NormalClassDeclaration、EnumDeclaration、NormalInterfaceDeclaration 和 AnnotationTypeDeclaration。该片段是TypeDeclSnippet的一个实例。类型声明可以是接口
Snippet.SubKind.INTERFACE_SUBKIND、类Snippet.SubKind.CLASS_SUBKIND、枚举和注释接口——请参阅Snippet.SubKind进行区分。类型声明是 persistent 。
- 看Java 语言规范:
-
7.6 顶级类型声明
-
METHOD
方法声明。该片段是MethodSnippet的一个实例。方法声明是 persistent 。
- 看Java 语言规范:
-
8.4 方法声明
-
VAR
一个变量声明。对应一个VariableDeclarator.该片段是VarSnippet的一个实例。该变量可能有或没有初始值设定项,或者是表示表达式的临时变量——请参阅
Snippet.SubKind进行区分。变量声明是 persistent 。
- 看Java 语言规范:
-
8.3 字段声明
-
EXPRESSION
一个表达式,有或没有副作用。该片段是ExpressionSnippet的一个实例。该表达式当前是对变量 (
Snippet.SubKind.VAR_VALUE_SUBKIND) 的简单命名引用或赋值(两者都有自然引用名称)——请参阅Snippet.SubKind进行区分。所有其他表达式形式(运算符、方法调用等)都会生成一个临时变量,而不是 VAR 种类。- 看Java 语言规范:
-
15个表达式
-
STATEMENT
一份声明。该片段是StatementSnippet的一个实例。- 看Java 语言规范:
-
14.5 声明
-
ERRONEOUS
无法确定具体种类的语法错误输入。该片段是ErroneousSnippet的一个实例。
-
-
方法详情
-
values
返回一个数组,其中包含此枚举类的常量,按照它们声明的顺序排列。- 返回:
- 包含此枚举类常量的数组,按照它们声明的顺序排列
-
valueOf
返回具有指定名称的此类的枚举常量。字符串必须匹配确切地用于在此类中声明枚举常量的标识符。 (不允许使用无关的空白字符。)- 参数:
name- 要返回的枚举常量的名称。- 返回:
- 具有指定名称的枚举常量
- 抛出:
IllegalArgumentException- 如果此枚举类没有具有指定名称的常量NullPointerException- 如果参数为空
-
isPersistent
public boolean isPersistent()指示此 Snippet 的Kind是否持久。只有声明是持久的,因为它们会影响未来的片段。请注意,尽管代码段的
Kind可能会持续存在,但这并不意味着该代码段会持续存在;例如,它可能无效或已被删除。参见:Snippet.Status.isDefined()。- 返回:
true如果Snippet的这个Kind对后续评估可见;否则false
-