第三部分:Idea重構總結
idea重構功能非常強大,特別是在java web方面,甚至能夠重構html/css/js,下面我將為讀者介紹idea的重構功能
重構快捷鍵Ctrl+Shift+Alt+T
1、重構之函數
public class ExtractMethord {
public void main(String[] args) {
System.out.println("Hello World!");
System.out.println("function start......");
System.out.println("1 + 1 = " + (1 + 1));
System.out.println("function over!");
System.out.println("program is over!");
}
}
如圖所示,我選擇想要提取的代碼,按快捷鍵Ctrl+Alt+M
,就會彈出框,寫出方法名稱即可快速提取一個方法。
提取方法
同樣的idea 不僅可以提煉方法,還可以內聯方法,其實就是提煉方法的逆操作,比如選擇print按Ctrl+alt+N
就會將print方法整個嵌套到剛剛的位置。
同樣的idea提供了修改函數的參數名稱,函數的參數位置
image.png
如圖所示,就可以更改函數參數的順序!!很強大有沒有!!
2、重構之變量
Ctrl+Alt+C
快速提取常量(Constant)
Ctrl+Alt+V
快速提取變量(Variable)
Ctrl+Alt+F
快速提取成員變量(Filed Variable)
除了以上這些idea還提供了重構變量類型的強大功能!
Ctrl+Shift+f6
重構變量的類型
點擊變量,直接使用快捷鍵即可
4、快速更改類名稱
選中類名稱,按快捷鍵shift+F6
可以快速更改類名稱,如果當前類是public的,idea會同時把文件名稱給也修改了!甚至如果其他地方有引用該類的地方,會提醒你要不要一起更改,是不是功能很強大?!
5、Pull Members Up
開始之前讓我們先看看Cal2類:
public class Cal2 extends Cal {
public int sub(int a,int b){
return a-b;
}
}
以及Cal2的父類Cal
public class Cal {
public int add(int a,int b){
return a+b;
}
}
最后的結果,就是將Cal2類中的sub方法,提到父類:
public class Cal {
public int add(int a,int b){
return a+b;
}
public int sub(int a,int b){
return a-b;
}
}
而我們所要做的就是鼠標右鍵
Refactor->Pull Members Up
將方法讓子類繼承,如圖所示,Alt+Enter鍵后選擇Implement method 'XXX'
image.png