重構動作

「重構」功能表指令:

名稱

說明

重新命名

重新命名所選的元素,以及(如果啟用的話)更正所有指向元素的參照(以及其他檔案中的參照)。
可用: 方法、方法參數、欄位、區域變數、類型、類型參數、列舉常數、編譯單元、套件、來源資料夾、專案,也可用於會解析成這些元素類型之一的文字選項
捷徑: Alt + Shift + R
選項: 重新命名類型可讓您將同樣命名的變數和方法重新命名。 請在「重新命名類型」對話框中,啟用「更新同樣命名的變數和方法」。 請選取「配置...」來配置類型名稱的相符策略。

重新命名套件可讓您重新命名它的子套件。 請在「重新命名套件」對話框中,啟用「重新命名子套件」。

移動

移動所選的元素,以及(如果啟用的話)更正所有指向元素的參照(以及其他檔案中的參照)。
可用: 實例方法(可以移至元件)、一或多個靜態方法、靜態欄位、類型、編譯單元、套件、程式碼資料夾和專案,也可用於會解析成這些元素類型之一的文字選項
捷徑: Alt + Shift + V
選項: 您可以在「套件瀏覽器」中,利用拖放來開始這項重構。
變更方法簽章 變更參數名稱、參數類型、參數順序,並更新對應方法的所有參照。 此外,可以移除或新增參數,也可以變更方法傳回類型及其可見性。
可用: 方法,也可用於會解析成方法的文字選項
選項: 在「變更方法簽章」對話框中,啟用「保持原始方法為已變更之方法的委派代表」來保持原始方法。
擷取方法 會建立一個內含目前所選之陳述式或表示式的新方法, 並將選擇項換成新方法的參照。 這項特性非常適合用來清除冗長、雜亂和太複雜的方法。
可用: 您可以使用編輯功能表中的展開選項至, 以取得有效的選項範圍。
捷徑: Alt + Shift + M
擷取區域變數 會建立一個新變數,以指定給目前所選的表示式, 並將選擇項換成新變數的參照。
可用: 解析為區域變數的文字選項。 您可以使用編輯功能表中的展開選項至, 以取得有效的選項範圍。
捷徑: Alt + Shift + L
擷取常數 從所選表示式中建立 static final 欄位並替代欄位參照,以及選擇性地重新寫入其他出現相同表示式的位置。
可用: 常數表示式或解析為常數表示式的文字選項
列入 列入區域變數、方法或常數。
可用: 方法、靜態最終欄位,以及會解析為方法、靜態最終欄位或區域變數的文字選項
捷徑: Alt + Shift + I
將匿名類別轉換成巢狀 將匿名內部類別轉換為成員類別。
可用: 匿名內部類別
將成員類型轉換成最上層 為所選成員類型建立新的 Java 編譯單元,同時依需要更新所有參照。 如有需要,對於非 static 的成員類型會增加一個欄位, 以容許存取先前含括的實例。
可用: 成員類型或解析為成員類型的文字
將區域變數轉換成欄位 將區域變數轉換成欄位。 如果在建立時已起始設定變數, 則作業會將起始設定移至新欄位的宣告, 或移至類別的建構子。
可用: 解析為區域變數的文字選項
擷取超類別 從一組同層級類型中,擷取出共用的超類別。 在套用這項重構之後,所選同層級類型會成為所擷取之超類別的直接子類別。
可用: 類型
選項: 啟用「儘可能擷取的類別」,以儘可能使用新建的類別。 請參閱儘可能使用超類型
擷取介面 利用一組方法來建立新的介面,以及使所選類別實作這個介面。
可用: 類型
選項: 啟用「儘可能擷取的介面類型」,以儘可能使用新建的介面。 請參閱儘可能使用超類型
適當時使用 Super 類型 在識別所有可能發生這項取代的位置之後,將出現的類型取代為它的超類型之一。
可用: 類型
下推 將類別中的一組方法和欄位移至它的子類別。
可用: 宣告在相同類型中的一或多個方法和欄位,也可用於欄位或方法內的文字選項
上拉 將欄位或方法移至其宣告類別的 Super 類別, 或(如果是方法)將方法宣告成 Super 類別中的 abstract。
可用: 宣告在相同類型中的一或多個方法、欄位和成員類型,也可用於欄位、方法或成員類型內的文字選項
引進間接 建立委派給所選方法的靜態間接方法。
可用: 方法,也可用於會解析成方法的文字選項
選項: 啟用「重新導向所有方法呼叫」,以呼叫間接方法來取代所有原始方法呼叫。
引進 Factory 建立新的 Factory 方法,由新的 Factory 方法來呼叫所選的建構子和傳回所建立的物件。 建構子的所有參照都會換成新 Factory 方法的呼叫。
可用: 建構子宣告
引進參數 將含有參照的表示式換成新的方法參數, 並更新該方法所有的呼叫端,將表示式當成該參數的值傳遞。
可用: 會解析為表示式的文字選項
封裝欄位 會將欄位的所有參照換成 getting 與 setting 方法。
可用: 欄位或會解析為欄位的文字選項
將宣告的類型一般化 可讓使用者選擇參照之現行類型的 Super 類型。 如果參照可安全地變更為新的類型, 則會如此做。
可用: 含參照類型之欄位、區域變數和參數的類型參照和宣告
推斷一般的類型引數 在識別所有可能進行這項取代的位置之後,以參數化的類型來取代一般的類型的原始類型出現項目。
可用: 專案、套件和類型
選項: 「假設 clone() 傳回接收端類型的實例」。 行為妥善的類別通常會遵循這個規則,但如果您知道程式碼違反這項規則,請取消選取這個框。

「保留原始未限制類型引數(不推斷 <?>)」。 如果 ArrayList 之類的元素沒有限制,取消選取這個框,Eclipse 便仍會提供萬用字元參數,用 ArrayList<?> 來取代參照。
移轉 JAR 檔 將工作區專案建置路徑上的 JAR 檔移轉成較新的版本,有可能利用新 JAR 檔所儲存的重構資訊來避免變更中斷。
可用: 建置路徑上的 JAR 檔
建立 Script 建立工作區中已套用之重構的 Script。 重構 Script 可以儲存在檔案中,或複製到剪貼簿中。 請參閱套用 Script
可用: 固定
套用 Script 將重構 Script 套用在工作區的各個專案上。 重構 Script 可以從檔案或剪貼簿中載入。 請參閱建立 Script
可用: 固定
歷程 瀏覽工作區重構歷程和提供刪除重構歷程中之重構的選項。
可用: 固定

重構指令也可以在一些視圖的快速功能表與 Java 編輯器中找到。

相關概念

重構支援

參考資訊

重構對話框
Java 喜好設定