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'