IntelliJ IDEA 2025.1 Help

包装返回值

Wrap Return Value 重构允许您选择一个方法,并创建一个返回值的包装类,或使用一个已有的、兼容的包装类。 所有从所选方法返回的值都将被适当包装,并且对该方法的所有调用都将取消其包装。

包装方法的返回值很有用,如果您的设计发生变化,您希望某个方法返回比最初计划更多的信息。 在包装之后,可以扩展包装类,从而允许方法返回更多数据。 此外,通常会包装原始返回值,从而允许在需要时解耦接口和实现。

安装 Additional Java Refactorings 插件

此功能依赖于 Additional Java Refactorings 插件,您需要安装并启用。

  1. Ctrl+Alt+S 打开设置,然后选择 插件

  2. 打开 Marketplace 选项卡,找到 Additional Java Refactorings 插件,然后点击 安装 (如果出现提示,请重启 IDE)。

运行 Wrap Return Value 重构

  1. 在编辑器中打开所需的类,并将文本光标放置在您希望包装其返回值的方法上。

  2. 在主菜单或上下文菜单中,前往 重构 | 包装返回值

  3. 在打开的对话框中,指定新的包装类的名称和包,或者选择一个现有的兼容包装类。

  4. 预览并应用更改。

示例

之前

之后

class Order { String customer; String getCustomer() { return customer; } }
class Order { String customer; Wrapper getCustomer() { return new Wrapper(customer); } } public class Wrapper { private final String value; public Wrapper(String value) { this.value = value; } public String getValue() { return value; } }

"封装返回值对话框"

使用此重构可以在方法的返回值周围创建一个包装类,或者使用兼容的现有类作为包装类。

条目

描述

从中包装返回值的方法

此只读字段显示所选方法的名称。

创建新类

点击此单选按钮以创建一个新的 wrapper 类。 如果选择此选项,请在以下字段中指定类和目标包名。

类名

请输入新 wrapper 类的名称。

软件包名称

默认情况下,会显示当前的包名称。 您可以在文本字段中键入不同的包名,或者点击省略号按钮,从树视图中选择目标包。 如果所需包不存在,请点击 创建一个新的。

目标目录

使用此字段选择目标目的地目录。 默认情况下,会显示当前目标目录。 您通常根据当前包选择目标目的地。 如果此包存在于多个根目录中,您可以点击箭头按钮并从列表中选择 留在相同的源根目录。 在这种情况下,wrapper 将放置在初始类附近。

您可以点击省略号按钮以打开 选择目标目录 窗口。

您可以选择 目录结构 选项卡来选择另一个目标目录,或者选择 选择邻近类 选项卡在邻近类附近放置一个包装器,例如,您希望将包装器放置在 util 目录中邻近您的 Pair 或 Triple 类,但您不记得确切的包名,将包装器放在 Pair 类附近会为您节省时间。

使用现有类

点击此单选按钮以选择用作包装器的现有类。

名称

指定所需包装类的名称。 请注意,此类应包含一个构造函数,其参数类型与所讨论的返回值类型相同。

您可以在文本字段中键入全限定类名,或点击省略号按钮并在 选择参数类 对话框中选择所需类。 请注意,您可以从项目类和非项目类中选择所需的包装类。

包装器字段

从指定的包装类中选择将存储返回值的字段。

内部类

点击此单选按钮以创建内部类。 例如,如果您有一个私有方法,您可能希望这样做。 在这种情况下,您可以将所有内容保留在相同的类中。

名称

指定内部类的名称。

>

最后修改日期: 2025年 4月 24日