java.lang.Object
jdk.jshell.execution.StreamingExecutionControl
jdk.jshell.execution.JdiExecutionControl
- すべての実装されたインタフェース:
AutoCloseable,ExecutionControl
- 直系の既知のサブクラス:
JdiDefaultExecutionControl
public abstract class JdiExecutionControl extends StreamingExecutionControl implements ExecutionControl
ExecutionControlのJDI実装の概要。- 導入されたバージョン:
- 9
-
ネストされたクラスのサマリー
インタフェース jdk.jshell.spi.ExecutionControlで宣言されたネストされたクラス/インタフェース
ExecutionControl.ClassBytecodes, ExecutionControl.ClassInstallException, ExecutionControl.EngineTerminationException, ExecutionControl.ExecutionControlException, ExecutionControl.InternalException, ExecutionControl.NotImplementedException, ExecutionControl.ResolutionException, ExecutionControl.RunException, ExecutionControl.StoppedException, ExecutionControl.UserException -
コンストラクタのサマリー
コンストラクタ 修飾子 コンストラクタ 説明 protectedJdiExecutionControl(ObjectOutput out, ObjectInput in)インスタンスの作成。 -
メソッドのサマリー
修飾子と型 メソッド 説明 voidredefine(ExecutionControl.ClassBytecodes[] cbcs)指定されたクラスを再定義します。protected ReferenceTypereferenceType(VirtualMachine vm, String name)指定されたクラス名に対応するJDIReferenceTypeを返します。protected abstract VirtualMachinevm()JDIVirtualMachineインスタンスを返します。クラス java.lang.Objectで宣言されたメソッド
clone、equals、finalize、getClass、hashCode、notify、notifyAll、toString、wait、wait、waitインタフェース jdk.jshell.spi.ExecutionControlで宣言されたメソッド
addToClasspath, close, extensionCommand, invoke, load, stop, varValue
-
コンストラクタの詳細
-
JdiExecutionControl
protected JdiExecutionControl(ObjectOutput out, ObjectInput in)インスタンスの作成。- パラメータ:
out- リモート・エージェントからの出力in- リモート・エージェントへの入力
-
-
メソッドの詳細
-
vm
protected abstract VirtualMachine vm() throws ExecutionControl.EngineTerminationExceptionJDIVirtualMachineインスタンスを返します。- 戻り値:
- 仮想マシン
- 例外:
ExecutionControl.EngineTerminationException- VMが停止/切断されている場合
-
redefine
public void redefine(ExecutionControl.ClassBytecodes[] cbcs) throws ExecutionControl.ClassInstallException, ExecutionControl.EngineTerminationException指定されたクラスを再定義します。 'redefine'がJDIおよびJVMTIの場合のように、クラス(クラス・アイデンティティを保持)のインプレース置換-- つまり、クラスへの既存の参照を再コンパイルする必要はありません。 この実装では、JDIVirtualMachine.redefineClasses(java.util.Map)を使用します。 クラスのシグネチャが(JDI仕様を参照してください)に変更された場合は失敗します。 JShellコアは、再定義の失敗に順応するように設計されています。- 定義:
- インタフェース
ExecutionControl内のredefine - パラメータ:
cbcs- 再定義するクラス名とバイトコード- 例外:
ExecutionControl.ClassInstallException- クラスを再定義する際に例外が発生しました。一部またはすべてが再定義されませんでしたExecutionControl.EngineTerminationException- 実行エンジンが終了しました
-
referenceType
protected ReferenceType referenceType(VirtualMachine vm, String name)指定されたクラス名に対応するJDIReferenceTypeを返します。- パラメータ:
vm-vm()が返す現在のJDIVirtualMachinename- ルックアップするクラス名- 戻り値:
- 対応する
ReferenceType
-