| |
---|
| | ここで, 呼び出しスタック上でさらに1つ呼び出し元をクリックしてください. |
---|
| | <div class = "image"><img src = "./images/images_problem1/ArgoUML_1_07.png" class = "threeQuartersSize"></div> |
---|
| | </p> |
---|
| | <p class = "explanation"> |
---|
| | 現在は, 呼び出し元である ActionRemoveFromDiagram() クラスの actionPerformed(ActionEvent) メソッドの89行目を見ています.<br> |
---|
| | 現在は, 呼び出し元である ActionRemoveFromDiagram クラスの actionPerformed(ActionEvent) メソッドの89行目を見ています.<br> |
---|
| | ここで, 変数ビュー上で 「呼び出し前」を開いて, レシーバのIDを確認してください.<br> |
---|
| | <div class = "image"><img src = "./images/images_problem1/ArgoUML_1_08.png" class = "threeQuartersSize"></div> |
---|
| | </p> |
---|
| | <p class = "explanation"> |
---|
| |
---|
| | <div class = "image"><img src = "./images/images_problem1/ArgoUML_1_09.png" class = "threeQuartersSize"></div> |
---|
| | </p> |
---|
| | <p class = "explanation"> |
---|
| | いったんデバッグ実行を終了してから, 再びデバッグ実行してください.<br> |
---|
| | すると, まずは ActionRemoveFromDiagram() クラスの actionPerformed(ActionEvent) メソッドの85行目に止まります.<br> |
---|
| | すると, まずは ActionRemoveFromDiagram クラスの actionPerformed(ActionEvent) メソッドの85行目に止まります.<br> |
---|
| | ここで, 先ほどブレークポイントを入れていた箇所に実行が進むかどうかを見ていきます.<br> |
---|
| | 再開ボタンを1回押すと, FigNodeModelElement クラスの removeFromDiagram() メソッドの1965行目に現在の実行時点が移ることが確認できます.<br> |
---|
| | もう一度再開ボタンを押すと, 今度は Fig クラスの removeFromDiagram() メソッドの743行目に現在の実行時点が移ることが確認できます.<br> |
---|
| | </p> |
---|
| | <p class = "explanation"> |
---|
| | いったんデバッグ実行を終了してから, 再びデバッグ実行してください.<br> |
---|
| | ActionRemoveFromDiagram() クラスの actionPerformed(ActionEvent) メソッドの85行目に止まります.<br> |
---|
| | ActionRemoveFromDiagram クラスの actionPerformed(ActionEvent) メソッドの85行目に止まります.<br> |
---|
| | ソースコードを見ると, ここでは ローカル変数 ce で参照されているインスタンスに対して getSelectionManager() メソッドが呼び出され, <br> |
---|
| | その戻り値に対して getFigs() メソッドが呼び出され, getFigs() メソッドの戻り値として返されたリストが, <br> |
---|
| | ローカル変数 figs に代入されていることが確認できます.<br> |
---|
| | ここで, まずはステップインを1回押して Editor クラスの getSelectionManager() メソッドの中に入ってください. |
---|
| |
---|
| | |