提取參數對象重構允許您為方法選擇一組參數,并為這些參數創建包裝類,或者使用現有的兼容包裝類。對所選方法的所有調用都將對其參數進行適當的包裝,并且包裝參數的所有用法都將被新創建的參數類上的相應調用所替代。
如果傳遞給方法的參數數量變得太大,或者參數已經變得足夠復雜,以至于它們自己的類的 first-class 處理,那么提取參數對象就很有用。另外,通常將原始參數作為參數對象進行包裝,因此可以根據需要將接口和實現分離。
示例
重構前 |
重構后 |
---|---|
|
|
提取參數對象
⒈ 選擇所需的方法。要做到這一點,請打開有問題的類進行編輯,然后在該方法上定位插入符號,在 Structure 視圖中單擊此類方法,或者在 UML 類圖中選擇它。
⒉ 在主菜單或選擇的上下文菜單上選擇:重構| 提取| 參數對象。
⒊ 在 "提取參數對象" 對話框中:
① 在 "參數類" 部分中,指定是要創建新類,還是使用現有項來包裝參數。
② 在 "要提取的參數" 列表中,檢查要包含在新類中的參數。
③ 單擊 "預覽" 以使 IntelliJ IDEA 搜索所選字段或方法的用法,并在 "查找" 工具窗口中顯示重構預覽結果。在預覽中,您可以將使用實例包括在重構中或跳過它們。單擊 "執行重構" 以將重構應用于所選的用法。
如果您不想查看使用實例,請單擊 "重構"。在這種情況下,將立即更改使用實例。
如果要影響的文件是只讀的,則可能會顯示 "重構預覽" 窗口。