Module  jdk.jshell
软件包  jdk.jshell

Class SnippetEvent



  • public class SnippetEvent
    extends Object
    对代码段的更改的描述。 这些是通过使用JShell.eval(String)JShell.drop(Snippet)直接更改为状态生成的,或间接通过相关方法更改或代码段被覆盖的相同方法。 对于直接更改, causeSnippet()null

    SnippetEvent是不可变的:访问其任何方法将始终返回相同的结果。 因此是线程安全的。

    从以下版本开始:
    9
    • 方法详细信息

      • snippet

        public Snippet snippet​()
        代码段已更改
        结果
        返回其 Status已更改的代码 Status
      • previousStatus

        public Snippet.Status previousStatus​()
        过渡前的状况 如果此事件描述代码段创建返回NONEXISTENT
        结果
        之前的状态
      • status

        public Snippet.Status status​()
        后状态。 注意:这可能与以前的状态相同(并非所有更改都会导致Status更改。
        结果
        状态
      • isSignatureChange

        public boolean isSignatureChange​()
        指示签名是否已更改。 进入或退出definition始终是签名变更。 覆盖的代码段(status == OVERWRITTEN)始终是false因为定义的责任已经转移到覆盖定义。
        结果
        true如果签名改变了; 否则false
      • causeSnippet

        public Snippet causeSnippet​()
        或者是其更改导致此更新的代码段,或null 这将返回null ,如果这种变化是通过新片段的创建eval ,或者是一个片段的明确下降drop
        结果
        导致此更改的代码段或 null如果由API操作直接导致。
      • value

        public String value​()
        成功运行的结果值。 如果不执行或抛出异常,该值为null。
        结果
        价值或 null
      • toString

        public String toString​()
        返回事件的字符串表示形式
        重写:
        toStringObject
        结果
        SnippetEvent的描述性表示