課題A3 (接近過程抽出)


接近過程抽出

課題A3終了直後は下図のような状態になっているはずです.
まずは, DefaultDragTracker クラスのインスタンス (id = 758826749) のフィールド transformedFigures が参照している HashSet に
RectangleFigure クラスのインスタンス (id = 1952912699) が追加されるまでの過程を抽出して見ていきます.
ここで, 「実行時点の登録」ビュー上で登録している「118行目 DefaultDragTracker.mousePressed(MouseEvent)」をダブルクリックしてください.
すると, 現在の実行時点が DefaultDragTracker クラスの mousePressed(MouseEvent) メソッドの118行目に移ります.

先ほどの操作によって, 現在は DefaultDragTracker クラスの mousePressed(MouseEvent) メソッドの118行目にいます.
ここで, 変数ビュー上の「呼び出し前」を開いて, 引数を右クリックしてください.
右クリックすると, ポップアップメニューが出てくるので, 上の方の「オブジェクトの接近過程抽出」をクリックしてください.

実際に「オブジェクトの接近過程抽出」を実行すると, 下図のような状態になります.

「オブジェクトの接近過程」ビュー上の「開始時点」をクリックしてください.

「オブジェクトの接近過程抽出」ビュー上の「参照先側001」から「参照先側020」までを順番にクリックしてください.

「オブジェクトの接近過程抽出」ビュー上の「参照元側001」から「参照元側002」までを順番にクリックしてください.

「オブジェクトの接近過程」ビュー上の「参照時点」をクリックしてください.

ここまでで, DefaultDragTracker クラスのインスタンス (id = 758826749) のフィールド transformedFigures が参照している HashSet に
RectangleFigure クラスのインスタンス (id = 1952912699) が追加されるまでの過程を見てきました.
ここで, 課題A3の接近過程抽出は終了です.
「オブジェクトの接近過程」ビューを全て閉じてください.
なお, デバッグ実行は終了せずにそのままの状態にしておいてください.