将构造函数替换为生成器
最后修改时间:2023 年 9 月 7 日AltEnter| 将构造函数替换为生成器
此重构仅可作为意向操作使用。
用构建器重构替换构造器有助于隐藏构造器,将其用法替换为对新生成的构建器类或现有构建器类的引用。
将插入符号放在编辑器中的构造函数调用处,然后按。AltEnter
从可用上下文操作列表中,选择Replace constructor with builder。
在打开的对话框中,如果需要,请更改建议的设置器名称。指定是否要初始化构建器中生成的字段。
如果您在构造函数调用中指定与参数值匹配的初始值,则可以通过选中“可选 Setter”复选框来跳过此类参数的 setter 方法。您还可以指定是要创建新的构建器还是使用现有的构建器。
预览并应用更改。
例子
前
class Foo { Foo(String firstName, String lastName, int age, boolean married) {} public static void main(String[] args) { Foo joe = new Foo("Joe", "Smith", 42, false); }}
后
class Foo { Foo(String firstName, String lastName, int age, boolean married) { } public static void main(String[] args) { //married is omitted, default "false" is used Foo joe = new FooBuilder() .setFirstName("Joe") .setLastName("Smith") .setAge(42) .createFoo(); } static class FooBuilder { private String firstName; private String firstName; private int age; private boolean married; public FooBuilder setFirstName(String firstName) { this.firstName = firstName; return this; } public Foo createFoo() { return new Foo(firstName, lastName, age, married); } }}
用构建器对话框替换构造函数
使用此对话框可以指定“使用构建器重构替换构造函数”的选项。
感谢您的反馈意见!
此页面是否有帮助?