【问题标题】:Is there a shortcut for adding fields to existing constructor in Eclipse?是否有在 Eclipse 中向现有构造函数添加字段的快捷方式?
【发布时间】:2013-11-24 17:19:24
【问题描述】:

Eclipse 中是否有任何快捷方式可以让我添加一个字段到现有构造函数的参数列表中?

示例:

我有这门课:

public class A {
    int a;
    int b;

    public A(int a, int b) {
        this.a = a;
        this.b = b;
    }
}

当我添加一个字段int c(或许多字段)时,我想将其添加到构造函数的参数列表并将参数分配给该字段:

public class A {
    int a;
    int b;
    int c; //this is new

    public A(int a, int b, int c) {
        this.a = a;
        this.b = b;
        this.c = c;
    }
}

我目前通过手动创建参数然后按CTRL + 1然后选择“将参数分配给字段”来做到这一点

但如果我一次添加多个字段,恕我直言,这并不是一个好的解决方案。

我不想创建新的构造函数!

【问题讨论】:

    标签: java eclipse keyboard-shortcuts code-generation


    【解决方案1】:

    我将首先使用“更改方法签名”重构(Mac 上的 option+command+c)将额外参数添加到构造函数。这样,调用构造函数的现有代码可以将合理的默认值作为参数传递(如果您愿意)。然后按您的建议选择多次 CTRL+1 以将新字段快速修复到类中。

    【讨论】:

    • 当然可以 :-) 是的,如果 Eclipse 有更好的功能来完成您的任务,它可能会更简单……想象一下,如果我们可以轻松编写此类工具并将它们添加为插件,例如微风。
    • Windows 上的 Shift-Alt-C。这是我最喜欢的重构工具之一,并且可能是 Eclipse 中最强大的。
    【解决方案2】:

    要在 Intellij 中使用此快捷方式,变量必须是最终的和私有的。

    1. 将您的变量声明为 final。

    例如:私有最终字符串名称;

    1. 在MAC系统中快捷键是Option+Return,我相信windows是Alt+Enter。

    2. 然后点击添加构造函数参数。

    玩得开心!

    【讨论】:

      【解决方案3】:

      向构造函数添加一个参数,然后按 alt+Enter(Control Assist),您将获得一个为参数创建字段的选项,然后按 Enter。这在最新的 IntelliJ 2017.2 中可用。

      【讨论】:

        【解决方案4】:

        据我所知,该区域中唯一的简短命令是“使用字段生成构造函数”,按 Alt+S 时可用。也许这可能会有所帮助。以下是有关快捷方式的更多有用信息。

        http://www.vogella.com/articles/EclipseShortcuts/article.html

        【讨论】:

        • 这将创建一个新的构造函数。但感谢您的链接!我去看看
        【解决方案5】:
        1. 将旧构造函数中的任何其他逻辑复制到剪贴板(在您的示例中没有)。
        2. 删除旧的构造函数。
        3. 使用ALT+insert 创建新的构造函数 -> constructor -> CTRL+A -> ENTER
        4. 粘贴在步骤 1 中复制的任何其他逻辑。

        【讨论】:

          【解决方案6】:

          你可以试试这个

          1. 右键单击java类
          2. Source->使用字段生成构造函数。
          3. 选择要使用的超级构造函数和要添加到构造函数的实例变量。

          【讨论】:

          • 好主意,但这不起作用,因为在同一个类中具有不同签名的构造函数不是超级构造函数
          【解决方案7】:

          在 Eclipse 中:

          1. 在构造函数中选择新参数
          2. 按 ctrl+1
          3. 选择“将参数分配给新字段”

          将在您的构造函数中创建并设置新字段。

          【讨论】:

          • 我认为 OP 已经表明了这个解决方案,并要求了一些不同的东西。
          【解决方案8】:

          使用 alt+shift+s+o。将出现使用字段生成构造函数窗口,单击全选按钮并按确定,您将获得所有字段已初始化的构造函数。

          【讨论】:

          • 这将创建一个新的构造函数
          • @PhilippSander:如果这会创建一个新的构造函数,您只需删除旧的构造函数。它需要单击、拖动和按键。
          • 它不想创建一个新的构造器
          猜你喜欢
          • 2016-04-14
          • 2016-01-09
          • 2012-08-24
          • 2023-03-27
          • 1970-01-01
          • 2012-06-21
          • 1970-01-01
          • 2014-08-04
          • 1970-01-01
          相关资源
          最近更新 更多