Java エレメントの編集

このセクションでは、ワークベンチ内の Java エレメントを編集します。

「アウトライン (Outline)」ビューの使用

1.

「パッケージ (Packages)」ビューで junit.samples.VectorTest.java を見つけて ダブルクリックすると、このファイルを Java エディター内で開くことができます。

2.

エディター・エリアのアクティブ・エディターに、このファイルが表示されていることを確認してください。アクティブ ・エディターでない場合には、そのエディターのタブをクリックしてアクティブ・エディターに変更してください。

3.

「パッケージ (Packages)」ビューで、エディター・エリアの各種リソースを開き、構文が強調表示されていることを確認します。以下に例を示します。

  • 標準コメント
  • Javadoc コメント
  • キーワードと組み込み型
  • ストリング

4.

「アウトライン (Outline)」ビューをよく見てください。パッケージ自体の階層アウトライン、インポート宣言、フィールド、クラス、およびメソッド を表示して、このビューにデータがどのように取り込まれているかを確認してください。

5.

「アウトライン (Outline)」ビューには、Java エレメントの修飾子 (abstract、final、など) が示されている ことも確認してください。

「アウトライン (Outline)」ビューのツールバーの「フィールドの表示 / 非表示 (Show/Hide Fields)」、「パブリック以外のメンバーの表示 / 非表示 (Show/Hide Non-Public Members)」、および 「static メンバーの表示 / 非表示 (Show/Hide Static Members)」ボタンを切り替え、ビューの表示 をフィルター操作してください。

6.

「アウトライン (Outline)」ビューの「ソート (Sort)」ボタンを切り替えて、 Java エレメントを (コンパイル単位で示されている) 順次に、あるいはアルファベット順にソートします。

7.

コンパイル単位のソース・コードをすべて表示して、ソース・コードを編集することができます。または、 ビューを単一のエレメントに絞り込むこともできます。VectorTest.java のタブをクリックし、 ツールバーの「選択されたエレメントのソースのみを表示 (Show Source of Selected Element Only)」 ボタンをクリックします。

「アウトライン (Outline)」ビューで各種エレメントを選択し、それらのビューのエレメントが、エディター内の分割された ビューにそれぞれ表示されるかどうかチェックしてください。

8.

もう一度エディター・エリアをクリックし、ツールバーの同じボタン (「完全なソースを表示 (Show Complete Source)」) をクリックします。

「アウトライン (Outline)」ビューで各種エレメントを選択し、それらのビューがエディター内の全ファイル・ビューにもう一度 表示されるかどうかを確認してください。次に、「アウトライン (Outline)」ビューの選択部分が、エディター内の マーカー・バーの範囲標識でマークされているかチェックしてください。

メソッドの追加とコード・アシストの使用

1.

「アウトライン (Outline)」ビューのツールバーの「ソート (Sort)」ボタンが切り替わり、このビューが (アルファベット順ではなく) 順次にソートされていることを確認してください。

2.

エディター・エリアで、VectorTest.java ファイルの一番最後 (ただし右大括弧の前) に 以下を入力します。

public void testSizeIsThree (){

エディター・エリアにメソッド名を入力すると、すぐに新規のメソッドが「アウトライン (Outline)」ビューの一番下に表示 されます (ビューが順次にソートされているため)。

3.

保管 (Save)」ボタンをクリックします。

ワークベンチは自動的にビルドを実行するので、エラーが「パッケージ (Package)」ビュー、「タスク (Tasks)」ビュー、 およびエディターのマーカー・バーに表示されます。また、「パッケージ (Package)」ビューでは、エラーは、そのエラーを 含むコンパイル単位のプロジェクトにまで波及する点にも注意してください。

4.

続けて以下を入力し、新規のメソッドを追加します。

assertTrue(fFull.size() == 3); }

5.

保管 (Save)」ボタンをクリックします。エラーが消えたことを確認してください。

ローカル・ヒストリーのメソッドの削除と置換

このセクションでは、ローカル・ヒストリー・サポートを使用して、以前に保管しておいた個々の Java エレメント に簡単に切り替える方法を説明します。

1.

「アウトライン (Outline)」ビューで、作成したばかりの testSizeIsThree() メソッドを選択し、 そのコンテキスト・メニューから「削除 (Delete)」を選択します。

2.

エディターで、VectorTest.java ファイルの最後に次のように新規の testSizeIsThree() メソッドを追加します。

public void testSizeIsThree() { fFull.add(0, new Integer(0)); fFull.remove(new Integer(3)); assertTrue(fFull.size() == 3); }

終了したら、「保管 (Save)」をクリックします。

3.

「アウトライン (Outline)」ビューで testSizeIsThree() メソッドを選択し、そのコンテキスト・メニューから、 「ローカル・ヒストリーからの置き換え (Replace from Local History)」を選択します。

4.

「ローカル・ヒストリーから Java エレメントを置換 (Replace Java Element from Local History)」ダイアログの 「ローカル・ヒストリー (Local History)」リストに、エレメントの各種保管状況が表示され、「Java ソースの比較 (Java Source Compare)」ペインに、選択されたヒストリー・リソースと、既存のワークベンチのリソースの差違の詳細が 表示されます。

5.

「ローカル・ヒストリー (Local History)」ペインで、削除したバージョンを選択し、「置換 (Replace)」を選択します。

6.

エディター内のコードが、ヒストリー・バージョンで置き換えられます。

保管 (Save)」ボタンをクリックします。

コンテンツ・アシストの使用

1.

junit.samples.VectorTest.java をダブルクリックしてエディター内に開きます。

2.

「アウトライン (Outline)」ビューで、testSizeIsThree() メソッドを選択して、エディター内のメソッドの コードまで移動します。

3.

エディターで、このメソッドの最後に以下の行を追加します。

Vector v = new Vector(); for (int i=0; i<3; i++) v.addElement(new Object()); assert

4.

カーソルを assert という語の最後に挿入し、Ctrl+ スペース を押して、コード・アシストを アクティブにします。

5.

リストを少しスクロールダウンすると、使用可能な選択項目を表示することができます。

コード・アシスト・ウィンドウをアクティブにしておいて、assert の後に t を入力してリストを絞り込みます (両者の間にはスペースを挿入しないでください)。

6.

リスト内の項目を選択し、各種項目の上にマウス・カーソルを移動すると、項目ごとに使用可能な Javadoc ヘルプが吹き出しで表示 されます。

注: 吹き出しヘルプを表示するには、最初に項目を選択する必要があります。

7.

リストから assertTrue(boolean) を選択し、Enter を押します。

8.

コードが挿入されたら、その行を次のように完成させます。

assertTrue(v.size() == fFull.size());

9.

終了したら、「保管 (Save)」をクリックします。

スマート・インポート・アシスタンスの使用

1.

スマート・インポート・アシスタンスが開いていない場合は、junit.samples.VectorTest.java をダブルクリックして、エディター内に開くことができます。

2.

「アウトライン (Outline)」ビューで import ステートメントを選択し、コンテキスト・メニューから 「削除 (Delete)」を選択します。

3.

エディターのコンテキスト・メニューから、「インポート宣言の編成 (Organize Imports)」 を選択します。

4.

必須の import ステートメントが、パッケージ宣言の下のコードの先頭に追加されます。

注: import ステートメントの順序は、「設定 (Preferences)」ページでコントロールすることができます (「ウィンドウ (Window)」>「設定 (Preferences)」>「Java」>「インポート順序 (Import Order)」)。

5.

終了したら、「保管 (Save)」をクリックします。

メソッドを抽出

このセクションでは、junit.framework.TestSuite のコンストラクターのコードを 改良します。コードが意図することをより明確にするために、テスト・ケースを収集するコードを基本クラスから抽出して、 そのコードを collectTestMethods という新規メソッドにします。

1.

junit.framework.TestSuite.java ファイルで、以下の範囲のコードを選択します。

Class superClass= theClass; Vector names= new Vector(); while (Test.class.isAssignableFrom(superClass)) { Method[] methods= superClass.getDeclaredMethods(); for (int i= 0; i < methods.length; i++) { addTestMethod(methods[i], names, constructor); } superClass= superClass.getSuperclass(); }

2.

エディター内の選択部分のコンテキスト・メニューから、「メソッドを抽出 (Extract Method) 」を選択します。

3.

メソッド名 (Method Name)」フィールドに「collectInheritedTests」 と入力し、「次へ (Next)」をクリックします。

4.

リファクタリングの「プレビュー (preview)」ページに、加えられる変更点が表示されます。

5.

メソッドが抽出されます。「アウトライン (Outline)」ビューでそれを選択し、エディター内の そのメソッドまで移動します。

選択項目上で開くおよび型階層上で開くの使用

1.

「パッケージ (Packages)」ビューで junit.samples.money.MoneyTest.java をダブルクリックし、エディター内で開きます。

2.

エディター内の MoneyTest クラス宣言の最初の行で、TestCase スーパークラス指定を選択し、以下のいずれかを行います。

  • メニュー・バーから「編集 (Edit)」>「選択項目上で開く (Open on Selection)」と選択する
  • F3 を押す

注: このコマンドは、メソッドやフィールドに対しても機能します。

3.

TestCase スーパークラスがエディター・エリアで開かれ、「アウトライン (Outline)」ビューにも表示されます。

4.

TestCase.java のエディターのタブをクリックし、そのエディターをアクティブにします。 クラス宣言が選択されていることを確認してから以下を実行します。

  • メニュー・バーから「編集 (Edit)」>「型階層で開く (Open Type Hierarchy)」と選択する
  • F4 を押す

5.

「階層 (Hierarchy)」ビューが開き、TestCase クラスが表示されます。

「階層 (Hierarchy)」ビューでは、型やメソッドに対してもエディターを開くことができます。