Jdb-breakpoints
提供:Dev Guides
JDB-ブレークポイント
この章では、ブレークポイントの概念と、プログラムにブレークポイントを設定する方法について説明します。 ブレークポイントは、デバッグ中に特定のコード行でプログラムの実行を明示的に停止または一時停止します。 実行中にプログラム内の変数に関する知識を取得すると便利です。
構文
次のコマンドは、特定の行番号にブレークポイントを設定します。
> stop at <class name>:<Line no>
次のコマンドは、特定のメソッドまたは特定の変数にブレークポイントを設定します。
> stop in <class name>:< Method name | Variable name>
例
次の例は、クラスにブレークポイントを設定する方法を示しています。
public class Add
{
public int addition( int x, int y)
{
int z = x + y;
return z;
}
public static void main( String ar[ ] )
{
int a = 5, b = 6;
Add ob = new Add();
int c = ob.addition(a,b);
System.out.println("Add: " + c);
}
}
上記のファイルをAdd.javaとして保存します。 次のコマンドを使用してこのファイルをコンパイルします。
\>javac Add.java
デバッグ
デバッグの例を見てみましょう。 ここでは、main()にブレークポイントを設定して、デバッグプロセスを開始します。 デバッグプロセスで従うべき手順を以下に示します。
ステップ1:JDBセッションを開始する
次のコマンドは、デバッグ用にAddクラスでJDBセッションを開始します。
\> jdb Add
ステップ2:ブレークポイントを設定する
次のコマンドは、Addクラスのmain()メソッドにブレークポイントを設定します。
> stop in Add.main
ブレークポイントが正常に設定されると、次の出力が表示されます。
Deferring breakpoint Add.main.
It will set after the class is loaded.
>
ステップ3:デバッグを開始する
次のコマンドは、クラスAddの実行を開始します。
> run Add
このコマンドを実行すると、次の出力が表示されます。 この出力では、ブレークポイントの位置、つまりmain()関数で実行が停止していることがわかります。
mainメソッドの最初の行、つまり「int a = 5、b = 6;」で実行が停止しますまたはコードの行番号:11。 出力でこの情報を確認できます。
ステップ4:実行を継続する
次のコマンドは、プログラムの実行を継続します。
cont
次のように、残りの実行部分と出力が表示されます。
> Add:11
The application exited
\>