阅读(409) (10)

在Groovy中提取方法

2018-07-26 10:12:43 更新

在Groovy中提取方法

本节讨论Groovy中的Extract Method(提取方法)重构。

通过此重构,您可以执行以下操作:

  • 提取变量的方法。
  • 提取变量列表的方法。
  • 提取一个或多个语句的方法。

使用示例

示例一:

重构前:

iii = 6
int kkk = 5
def vv = 6
def gg = 7

println (kkk + iii + (vv +gg))

重构后:

iii = 6
int kkk = 5
def vv = 6
def gg = 7

println(kkk + iii + testMethod(vv, gg))

private int testMethod(int vv, int gg) {
return vv + gg
}

示例二:

重构前:

def a = 5

重构后:

def a = 5

thod(a)

stMethod(int a) {

示例三:

重构前:

static def foo (int i, int j, int k){
def v
println(i + j - k)
v = 42

if (i > 42) {
println("hello!")
} else {
return v + j
}
return 239
}

重构后:

static def foo(int i, int j, int k) {
def v
println(i + j - k)
v = 42
return testMethod(i, v, j)
}

private static int testMethod(int i, int v, int j) {
if (i > 42) {
println("hello!")
} else {
return v + j
}
return 239
}

在Groovy中提取方法的详细操作步骤如下所示:

提示:形成方法的代码片段不一定必须是一组语句。它也可能是代码中某处使用的表达式。

  1. 在编辑器中,选择要转换为方法或函数的代码块。
  2. 在主菜单或选择的上下文菜单上,选择:Refactor |提取|方法(Refactor | Extract | Method)或按Ctrl+Alt+M。
  3. 在打开的“提取方法(Extract Method)”对话框中,指定新方法的名称。
  4. 要显式返回数据类型的值,请选中“显式指定返回类型(Specify return type explicitly)”复选框。
  5. 要返回关键字,请选中“使用显式返回语句(Use explicit return statement)”复选框。
  6. 在“参数(Parameters)”区域中,执行以下操作:
    • 通过选择/清除相应的复选框,指定要作为方法参数传递的变量;如果禁用某个参数,则将在提取的方法中创建具有初始值的相应类型的局部变量,因此您必须手动输入具有适当值的初始值设定项。
    • 通过双击相应的参数行并输入新名称来重命名所需的参数。
  7. 在“签名预览(Signature Preview)”窗格中检查结果,然后单击“确定(OK)” 以创建方法。选定的代码片段将替换为方法调用。此外,IntelliJ IDEA将建议替换当前类中找到的任何类似代码片段。