更新时间:2025-08-19 GMT+08:00
分享

引入参数

此重构允许为方法声明引入新参数,以便在方法调用中,将原始表达式作为方法参数传递。您还可以选择保留原始方法,或者使用创建的参数定义一个新方法。这与内联参数重构相反。

执行重构

  1. 在代码编辑器中,将光标放置在要提取到参数的表达式上。
  2. 单击右键展示上下文菜单,选择重构 > 引入参数...。或者按“Ctrl+Shift+Alt+P”
  3. 如果多个表达式属于重构范围,请在弹窗中选择所需的表达式。
  4. 在打开的“引入参数”对话框中,提供引入参数的类型和名称,并选择是否应将参数“声明为final”参数。要保留原始方法并使用引入的参数定义新方法,请使用“通过重载方法委托”选项。

    如下图所示:

    图1 引入参数

  5. 单击“重构” 以应用重构。

示例

作为示例,将表达式 "Hello" + " " + "World!" 提取到一个新的message参数中,并将其委托给一个重载的方法。

重构前

“com\refactoring\source\ExtractParameter.java”文件内容如下:

class ExtractParameter {

    public static void main(String[] args) {
        sayHello();
    }

    private static void sayHello() {
        System.out.println("Hello" + " " + "World!");
    }
}

重构后

“println”的参数作为参数引入后,“com\refactoring\source\ExtractParameter.java”文件内容如下:

class ExtractParameter {

    public static void main(String[] args) {
        sayHello("Hello" + " " + "World!");
    }

    private static void sayHello(String message) {
        System.out.println(message);
    }
}

相关文档