CodeArts IDE
CodeArts IDE
- 最新动态
- 产品介绍
- 快速入门
-
用户指南
- 下载CodeArts IDE客户端
- 登录CodeArts IDE客户端
- 激活CodeArts IDE客户端
- 配置CodeArts IDE用户权限
- CodeArts IDE产品功能介绍
- CodeArts IDE基础操作介绍
- 使用CodeArts IDE for C/C++
- 使用CodeArts IDE for Java
- 使用CodeArts IDE for Python
- 使用CodeArts IDE for RemoteShell
- 最佳实践
- 常见问题
- API参考
- 文档下载
- 通用参考
链接复制成功!
引入参数对象
此重构允许您将方法的参数移动到新的包装类或某些现有的包装类。所有参数的用法都将替换为对包装类的相应调用。
执行重构
- 在代码编辑器中,将光标放置在要提取到包装类的参数上。
- 在编辑器上下文菜单中,选择“重构 > 引入参数对象...”。
- 在打开的“引入参数对象”对话框中,提供重构选项。
- “保留方法作为委托”:选择将原始方法保留为新创建方法的委托。
- “参数类”: 在此区域中,选择是要创建新的包装参数类、在当前包装参数类中创建内部类,还是使用某些现有类。
- “名称”:输入包装后参数的名称。
- “要提取的参数”: 在此区域中,选中要提取到包装参数类的参数旁边的复选框。
- 单击“重构”以应用重构。
示例
例如,将hello和world参数提取到TextContainer内部类,以使生成的generateText方法调用将包含对TextContainer对象的调用。
重构前
class ExtractParameterObject {
public static void main(String[] args) {
System.out.println(generateText("Hello", "World!"));
}
private static String generateText(String hello, String world) {
return hello.toUpperCase() + world.toUpperCase();
}
}
重构后
class ExtractParameter {
public static void main(String[] args) {
System.out.println(generateText(new TextContainer("Hello", "World!")));
}
private static String generateText(TextContainer textContainer) {
return textContainer.getHello().toUpperCase() + textContainer.getWorld().toUpperCase();
}
private static class TextContainer {
private final String hello;
private final String world;
private TextContainer(String hello, String world) {
this.hello = hello;
this.world = world;
}
public String getHello() {
return hello;
}
public String getWorld() {
return world;
}
}
}
父主题: 提取/引入重构