在這一節中,您要在工作台中編輯 Java 元素。
1. |
在「套件」檢視畫面中,找出 junit.samples.VectorTest.java 來按它兩下,以在 Java 編輯器中開啟這個檔案。 |
2. |
在編輯器區域中,請注意,這個檔案顯示在作用中的編輯器中。 如果它不是作用中的編輯器,請按一下它的標籤使它成為作用中。 |
3. |
在「套件」檢視畫面中,開啟編輯器區域中的各種資源,並注意語法的強調顯示。 比方說:
![]() |
4. |
查看「概要」檢視畫面。請注意它如何移入顯示套件本身及匯入宣告、欄位、類別、方法的階層概要。 ![]() |
5. |
請注意,「概要」檢視畫面會指出 Java 元素是 abstract、final...等。 請在「概要」檢視畫面工具列中,切換顯示/隱藏欄位、顯示/隱藏非 Public 成員及顯示/隱藏 Static 成員按鈕。 ![]() |
6. |
切換「概要」檢視畫面中的排序按鈕來循序(如編譯單元所指示)或按字母順序排列 Java 元素。 |
7. |
您可以檢視編譯單元的完整原始碼來編輯原始碼,您也可以將檢視畫面的範圍縮小成單一元素。 請按一下 VectorTest.java 的標籤,再按一下工具列中的只顯示所選元素的來源。 請在「概要」檢視畫面中選取各種元素,並注意編輯器的區段檢視畫面如何個別顯示它們。 ![]() |
8. |
再按一下編輯器區,並按一下工具列中的相同按鈕(顯示完整原始檔)。 請在「概要」檢視畫面中選取各種元素,並注意到編輯器的完整檔案檢視畫面中又再次顯示它們。 現在,請注意,編輯器已利用標示元列的範圍指示器來標示「概要」檢視畫面選項。 ![]() |
1. |
確定已按下「概要」檢視畫面工具列中的「排序」按鈕,因此能夠循序排列(不是按字母順序)檢視畫面。 |
2. |
在編輯器區中,在 VectorTest.java 檔的最尾端(但在關閉方括弧之前)輸入下列字串: public void testSizeIsThree (){ 請注意,您在編輯器區中輸入方法名稱時,「概要」檢視畫面的最底端會立即出現新方法(因為檢視畫面是循序排列)。 ![]() |
3. |
請按一下儲存按鈕。 請注意,由於工作區是自動建置的,因此,「套件」檢視畫面、「作業」檢視畫面和編輯器標示元列都會顯示錯誤。 另外,也請注意,在「套件」檢視畫面中,錯誤會向上傳達至錯誤所在編譯單元的專案。 ![]() |
4. |
輸入下列字串來繼續加入新方法: assertTrue(fFull.size() == 3); } |
5. |
按一下儲存按鈕。 請注意,這時錯誤會消失。 |
在這一節中,您要利用本端歷程支援來切換至先前所儲存的個別 Java 元素的版本。
1. |
在「概要」檢視畫面中,選取您剛剛建立的 testSizeIsThree() 方法,再從它的環境定義功能表中,選取刪除。 |
2. |
在編輯器中 VectorTest.java 檔的尾端,加入新的 testSizeIsThree() 方法: public void testSizeIsThree() { fFull.add(0, new Integer(0)); fFull.remove(new Integer(3)); assertTrue(fFull.size() == 3); } 完成之後,按一下儲存。 |
3. |
在「概要」檢視畫面中,選取 testSizeIsThree() 方法,再從它的環境定義功能表中,選取從本端歷程中取代。 |
4. |
在「從本端歷程取代 Java 元素」對話框中,「本端歷程」清單會顯示該元素各種已儲存的狀態,「Java 原始檔比較」窗格會顯示所選歷程資源和現有工作台資源的差異細節。 ![]() |
5. |
在「本端歷程」窗格中,選取您刪除的版本,再按一下取代。 |
6. |
編輯器中的程式碼會取代為歷程版本。 請按一下儲存按鈕。 |
1. |
按兩下 junit.samples.VectorTest.java,以在編輯器中開啟它。 |
2. |
在「概要」檢視畫面中,選取 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. |
完成之後,按一下儲存。 |
1. |
如果還沒有開啟 junit.samples.VectorTest.java,請按它兩下,以在編輯器中開啟它。 |
2. |
在「概要」檢視畫面中,選取 import 陳述式,再從它們的環境定義功能表中,選取刪除。 ![]() |
3. |
從編輯器的環境定義功能表中,選取組織匯入項目。 |
4. |
這時會將必要的 import 陳述式加入程式碼的開頭,放在套件宣告之下。 ![]() 附註:您可以在喜好設定頁面(視窗 > 喜好設定 > Java > 匯入次序)中,控制 import 陳述式的次序。 |
5. |
完成之後,按一下儲存。 |
在這一節中,您要改進 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. |
在編輯器中,從選項的環境定義功能表中,選取擷取方法。 ![]() |
3. |
在方法名稱欄位中,輸入 collectInheritedTests,再按下一步。 ![]() |
4. |
這時重新分解因素預覽頁面會顯示要進行的變更。 ![]() |
5. |
這時已擷取方法。 請在「概要」檢視畫面中選取它,以在編輯器中導覽找到它。 ![]() |
1. |
在「套件」檢視畫面中,按兩下 junit.samples.money.MoneyTest.java 以在編輯器中開啟它。 |
2. |
在編輯器 MoneyTest 類別宣告的第一行中,選取 TestCase 超類別規格,再執行下列動作之一:
![]() 附註:這個指令也適用於方法和欄位。 |
3. |
TestCase 超類別會開啟在編輯器區中,也會出現在「概要」檢視畫面中。 ![]() |
4. |
按一下 TestCase.java 編輯器標籤,使它成為作用中的編輯器。 請確定類別宣告仍在選取狀態,並:
![]() |
5. |
這時會開啟「階層」檢視畫面,顯示 TestCase 類別。 ![]() 您也可以開啟編輯器來處理「階層」檢視畫面中的類型和方法。 |