模块  jdk.jshell
软件包  jdk.jshell

Class SnippetEvent


  • public class SnippetEventextends Object
    片段更改的说明。 这些是通过直接更改为状态JShell.eval(String)JShell.drop(Snippet)生成的 ,或者通过这些相同的方法间接生成 ,因为依赖关系更改或片段被覆盖。 对于直接更改, causeSnippet()null

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

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

      • snippet

        public Snippet snippet()
        改变了的片段
        结果
        返回其 Status已更改的Snippet。
      • previousStatus

        public Snippet.Status previousStatus()
        过渡前的状态。 如果此事件描述了Snippet创建,则返回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()
        返回事件的字符串表示形式
        重写:
        toString在类 Object
        结果
        SnippetEvent的描述性表示