- すべての実装されたインタフェース:
Serializable
,Comparable<Snippet.Status>
,Constable
- 含まれているクラス:
Snippet
JShell
での問合せ」で検索されます。
Status
は、状態が変化すると変化します。 たとえば、eval
を使用して別のスニペットを作成すると、このスニペット(それらの依存関係を無効にします)の依存関係を解決するか、このスニペットをStatus
に変更してoverwriteできます。
Status
に関連する重要なプロパティ: isDefined()
は、既存のスニペットと新しいスニペットが参照可能な場合、isActive()
は、JShellの状態が変更されるとスニペットが更新され、Status
が変更される可能性があります。 実行可能スニペットは、VALID
Status
にある場合にのみ実行できます。
- 関連項目:
-
ネストされたクラスのサマリー
クラスjava.lang.Enumで宣言されたネストされたクラス/インタフェース
Enum.EnumDesc<E extends Enum<E>>
-
列挙型定数のサマリー
列挙型定数列挙型定数説明スニペットは、JShell.drop(Snippet)
への明示的な呼び出しのために非アクティブです。スニペットは、まだ存在しないため非アクティブです。スニペットは、新しいスニペットに置き換えられたため、非アクティブです。スニペットは、回復可能な未解決の参照やその他の問題が本文(現在のJShell
状態のコンテキストで)にある宣言スニペットです。スニペットは、回復可能な未解決の参照やその他の問題がある可能性のある宣言スニペットです。(現在のJShell
状態のコンテキストで)。スニペットは、最初の評価でコンパイルに失敗し、JShell状態をさらに変更して有効になることができないため、非アクティブです。スニペットは有効なスニペット(現在のJShell
状態のコンテキストで)です。 -
メソッドのサマリー
修飾子と型メソッド説明boolean
isActive()
スニペットがアクティブかどうか、つまり、ステータスを変更する可能性のある新しいJShell.eval(String)
またはJShell.drop(Snippet)
が呼び出されたときに、persistentスニペットが再評価されるかどうかを示します。boolean
スニペットが現在JShellの定義済状態の一部であるかどうかを示します。static Snippet.Status
指定された名前を持つこのクラスのenum定数を返します。static Snippet.Status[]
values()
この列挙クラスの定数を含む配列を宣言されている順序で 返します。
-
列挙型定数の詳細
-
VALID
public static final Snippet.Status VALIDスニペットは有効なスニペット(現在のJShell
状態のコンテキストで)です。VALID
Status
を持つスニペットのみを(すべてのVALID
スニペットに実行可能コードがあるわけではありません)で実行することができます。スニペットは(
isDefined() == true
)と定義されています。 スニペットが宣言または(Snippet.Kind.isPersistent()
)をインポートする場合、スニペットは他のスニペットから見えますスニペットは、依存先が(
isActive() == true
)を変更すると更新され、そのステータスはRECOVERABLE_DEFINED
,RECOVERABLE_NOT_DEFINED
,DROPPED
またはOVERWRITTEN
になります。 -
RECOVERABLE_DEFINED
public static final Snippet.Status RECOVERABLE_DEFINEDスニペットは、回復可能な未解決の参照やその他の問題が本文(現在のJShell
状態のコンテキストで)にある宣言スニペットです。 このStatus
を持つことができるのはDeclarationSnippet
だけです。スニペットには有効なシグネチャがあり、他のスニペット(
isDefined() == true
)から参照できるため、既存のスニペットまたは新しいスニペットで参照できますが、スニペットは実行できません。 実行しようとすると、UnresolvedReferenceException
がスローされます。スニペットは、依存先が(
isActive() == true
)を変更すると更新され、そのステータスはVALID
,RECOVERABLE_NOT_DEFINED
,DROPPED
またはOVERWRITTEN
になります。ノート:
RECOVERABLE_DEFINED
とRECOVERABLE_NOT_DEFINED
の両方がリカバリ可能なエラーを示しており、RECOVERABLE_DEFINED
の場合、スニペットはdefinedです。 -
RECOVERABLE_NOT_DEFINED
public static final Snippet.Status RECOVERABLE_NOT_DEFINEDスニペットは、回復可能な未解決の参照やその他の問題がある可能性のある宣言スニペットです。(現在のJShell
状態のコンテキストで)。 このStatus
を持つことができるのはDeclarationSnippet
だけです。スニペットに無効なシグネチャがあるか、実装でシグネチャを定義できません。 スニペットは、他のスニペット(
isDefined() == false
)には表示されないため、参照または実行できません。スニペットは、依存先が(
isActive() == true
)を変更すると更新され、そのステータスはVALID
,RECOVERABLE_DEFINED
,DROPPED
またはOVERWRITTEN
になります。ノート:
RECOVERABLE_DEFINED
とRECOVERABLE_NOT_DEFINED
の両方がリカバリ可能なエラーを示しており、RECOVERABLE_DEFINED
の場合、スニペットはdefinedです。 -
DROPPED
public static final Snippet.Status DROPPEDスニペットは、JShell.drop(Snippet)
への明示的な呼び出しのために非アクティブです。スニペットは、他のスニペット(
isDefined() == false
)には表示されないため、参照または実行できません。依存先が(
isActive() == false
)を変更するとスニペットは更新されず、そのStatus
は二度と変更されません。 -
OVERWRITTEN
public static final Snippet.Status OVERWRITTENスニペットは、新しいスニペットに置き換えられたため、非アクティブです。 これは、eval
で追加された新しいスニペットが以前のスニペットと一致する場合に発生します。 名前が一致する場合、TypeDeclSnippet
は別のTypeDeclSnippet
と一致します。 たとえば、class X { }
はclass X { int ii; }
またはinterface X { }
を上書きします。 名前とパラメータ・タイプが一致する場合、MethodSnippet
は別のMethodSnippet
と一致します。 たとえば、void m(int a) { }
はint m(int a) { return a+a; }
を上書きします。 名前が一致する場合、VarSnippet
は別のVarSnippet
と一致します。 たとえば、double z;
はlong z = 2L;
を上書きします。 このStatus
を持つことができるのはPersistentSnippet
だけです。スニペットは、他のスニペット(
isDefined() == false
)には表示されないため、参照または実行できません。依存先が(
isActive() == false
)を変更するとスニペットは更新されず、そのStatus
は二度と変更されません。 -
REJECTED
public static final Snippet.Status REJECTEDスニペットは、最初の評価でコンパイルに失敗し、JShell状態をさらに変更して有効になることができないため、非アクティブです。スニペットは、他のスニペット(
isDefined() == false
)には表示されないため、参照または実行できません。依存先が(
isActive() == false
)を変更するとスニペットは更新されず、そのStatus
は二度と変更されません。 -
NONEXISTENT
public static final Snippet.Status NONEXISTENTスニペットは、まだ存在しないため非アクティブです。 新規スニペットの場合は、SnippetEvent.previousStatus
内でのみ使用します。JShell.status(Snippet)
は、このStatus
を返さません。isDefined()
とisActive()
は、どちらもfalse
と定義されています。
-
-
メソッドの詳細
-
values
public static Snippet.Status[] values()この列挙クラスの定数を含む配列を宣言されている順序で 返します。- 戻り値:
- この列挙クラスの定数を宣言されている順序で含む配列
-
valueOf
public static Snippet.Status valueOf(String name) 指定された名前を持つこのクラスのenum定数を返します。 文字列は、このクラスでenum定数を宣言するために使用される識別子と正確に一致する必要があります。 (不適切な空白文字は許可されません。)- パラメータ:
name
- 返される列挙型定数の名前。- 戻り値:
- 指定された名前を持つ列挙型定数
- 例外:
IllegalArgumentException
- この列挙型クラスに指定された名前の定数がない場合NullPointerException
- 引数がnullの場合
-
isActive
public boolean isActive()スニペットがアクティブかどうか、つまり、ステータスを変更する可能性のある新しいJShell.eval(String)
またはJShell.drop(Snippet)
が呼び出されたときに、persistentスニペットが再評価されるかどうかを示します。RECOVERABLE_NOT_DEFINED
のスニペットが更新されるため、これはisDefined()
よりも広い範囲です。- 戻り値:
- スニペットがアクティブな場合は
true
; そうでなければfalse
-
isDefined
public boolean isDefined()スニペットが現在JShellの定義済状態の一部であるかどうかを示します。 他のスニペットのコンパイルには見えますか?- 戻り値:
- スニペットが定義されている場合は
true
; そうでなければfalse
-