Eclipse:添加字段时如何自动生成getter?

时间:2012-06-04 16:40:53

标签: java eclipse

我正在使用TDD,并且有一个非常典型的编码模式,在我对单元测试进行编码时使用Eclipse自动创建方法和字段。例如:

  1. 不存在的方法的类型名称,例如:

    myObj.setValue(someValue);

  2. 单击IDE中的小红色错误标记以创建“setValue”方法。

  3. 在setValue方法内输入:

    public void setValue(String value) { this.value = value; }

  4. 单击红色错误标记以自动创建私有字段(在本例中称为“值”);

  5. 所以在这一点上,我希望Eclipse自动创建getter方法,而不必使用 source - >生成getter和setter 菜单。

    我看到了这个问题:How do you force Eclipse to prompt you to create a getter and setter when it doesn't do it automatically这似乎意味着Eclipse会这样做,但我找不到配置它的位置。

    有没有办法让Eclipse在添加新的私有变量时自动添加setter / getter?

    更新: 为了进一步澄清,我正在寻找我在Spring Roo文档中看到的内容。如果您查看“工作原理”部分,它将描述每当您添加私有变量时框架如何自动向您的类添加其他方法。 (我的偏好不是为了运行这样的另一个过程,也不是为了得到它似乎添加的所有瑕疵)。我希望Eclipse有类似的东西。

5 个答案:

答案 0 :(得分:17)

将鼠标移到变量名称上方时,可以在弹出菜单中选择“为varname创建getter和setter”。

或者您可以创建自己的快捷方式。偏好 - >一般 - >键。在搜索框中输入“getter”,然后就可以找到它。

答案 1 :(得分:10)

试试这个,就像黄油一样

Goto Source --> Generate Getter and Setter Methods

Either select one instance varible, or all ---> Ok

答案 2 :(得分:3)

嗯...不知道如果这是你正在寻找的,但是如果我在课堂上创建一个字段,则会发出一个警告,表明该字段未被使用。如果我点击警告标志,则会显示为该字段生成getter和setter的选项:

enter image description here

答案 3 :(得分:3)

我的确有所不同。

  • 首先创建变量:(说private int threadsInPool = 3)。
  • 将光标放在变量名称上(例如threadsInPool
  • 应用此快捷方式: Alt + Shift + s r 按最后一个< kbd> r 之后 稍有延迟
  • 生成Getters and Setters 对话框出现时,只需按Enter键即可!

编辑: 您也可以尝试使用Lombok注释:

@Getter @Setter private String value;

答案 4 :(得分:1)

我不认为这个问题意味着,因为所有答案都提供了手动解决方案。

AFAIK如果没有插件就不可能自动执行,而且我不知道插件是什么。

我使用模板一次性创建所有工件,但我不遵循相同的路径 - 我不确定如果已经存在getter或setter,模板解决方案将起作用,因为我不是确保您可以检查是否存在方法并根据该方法做出模板决策。也许你可以。