2

我可以为在主类中创建的对象生成一个设置器吗

  1. 创建类 X
  2. X 类有几十个变量,有 setter 和 getter 方法(没问题)
  3. 来自另一个类中的类 X 的装箱对象 y
  4. 我想在另一个类中设置对象 y 的变量

IntelliJ IDE 是否有一个生成器,用于将设置器设置为 y.set1() .. y.setn() 而不是将它们写下来数十次。

4

3 回答 3

8

我正在使用构造函数技巧,但找到了更好的方法(对我来说):

转到您要为其生成设置器的类的“结构”视图,并将成员从 a 到 z 排序。

然后你可以复制/粘贴设置器

在此处输入图像描述

现在通过一点点多行编辑(alt + 左键单击),您将能够添加该行的缺失部分。

在此处输入图像描述

希望有所帮助。

于 2015-06-26T15:01:27.017 回答
1

不,不是直接,但是您可能想要创建一个设置所有字段的构造函数(可能与dozens字段混淆,但仍然可行......)

  • 进入 X 类,点击 InsertGenerate弹出窗口,点击 Enter 选择Constructor,然后按 ctrl-A 表示 All,Enter

Action如果您认为付出的努力是值得的,也可以编写一个小的自定义 IntelliJ 插件来执行此操作...

否则,如果您正在处理具有许多字段的对象,那么Builder设计模式可能值得一看。

建造者模式的例子

为此有一个 IntelliJ 重构!

使用所有字段(如上)创建您的构造函数,然后从Refactor菜单(右键单击)中选择Replace Constructor With Builder.

然后寻找一个名为的新类XBuilder并像这样使用它......

X y = new XBuilder.setA(1).setB(2).setC(3).createX();
于 2013-09-03T13:22:43.993 回答
-1

有一个插件。生成AllSetter

要安装插件,请转到:

  • 首选项 -> 插件 -> 浏览存储库...
  • 搜索:GenerateAllSetter并单击安装按钮。 例子
  • 重新启动 Intellij。

用法:

  • 只需单击要生成设置器的变量,然后单击Alt + Enter. 将有一个“生成所有设置器”的选项: 示例
  • 单击“生成所有setter”选项后,将生成已创建对象的所有setter:示例
于 2017-10-15T22:02:58.800 回答