MyEclipse提取方法
MyEclipse使用快捷键提取方法的要点
这篇日志着重阐述在使用MyEclipse的快捷键提取代码中的方法的时候,应该注意的要点:
- MyEclipse使用快捷键提取方法的要点
1). 从现有代码提前方法的操作步骤
(1). 操作步骤
[1]. step1:选中要提取的代码区域
[2]. step2:右击选中的代码区域,Refactor ----> Extract Method…
[3]. step3: 选择Extract Method… 弹出对话框
在Method name中输入想为这段代码区域构成的方法取的函数名即可。
【技巧】:选中要提取的代码行之后,使用Alt+Shift +M组合快捷键直接跳到Extract Method对话框
(2). 使用前提
选中的代码区域中的每一行必须包含该行的整行代码,否则弹出无法提取的对话框
【无法提取的示例】
2). 需求变化
(1). 提取方法的输入参数的控制
选择的区域代码块中,如果出现某些变量没有在选中的区域中定义:
{1}.如果这个选中的区域中还包含其他方法的调用,并且这个变量作为包含的其他的方法的参数,那么最后提取的方法就会将这个变量作为参数的一部分。
{2}. 如果在选中区域中未定义的变量没有作为其他调用方法的参数,那么提取出来的方法就会把这个变量作为方法的局部变量进行处理。
【举例】
(2). 提取方法的输入参数的排列顺序
这个顺序按照区域中未定义又作为调用其他方法的实参的变量在外部定义的先后顺序而定,和在选中区域中未定义变量出现的顺序无关。
【举例】
(3). 如何提取含有返回值的方法
【前提】
{1}. 被选择区域中的最后一行必须是赋值语句
{2}. 赋值语句左端的变量必须在选择区域之后被使用或者出现
以上两个条件缺一不可,必须都满足才能提取出含有返回值的方法!!!!
【示例1】
分析:虽然被选择区域的最后一行是赋值语句,但是被赋值的变量retVal在选择区域之后没有被使用,所以,提取工具认为即使给你返回值,你也没用上,所以索性没有返回值。
【示例2】
两个条件都满足,可以发现提取出来的方法的返回值不再是void而是Object。