我正在开发一个新的Android
项目(Java
),并创建了一个包含大量变量的Object。由于我打算为所有这些添加getter和setter,我想知道:Eclipse
中是否有一个快捷方式可以自动生成给定类中的getter和setter?
答案 0 :(得分:335)
在所需类的源代码窗口中打开上下文菜单(即右键单击)。然后选择Source
子菜单;从该菜单中选择Generate Getters and Setters...
将导致出现向导窗口。
Source -> Generate Getters and Setters...
选择要为其创建getter和setter的变量,然后单击OK
。
答案 1 :(得分:69)
在Eclipse Juno中,默认情况下, ALT + SHIFT + S,R 会打开getter / setter对话框。请注意,您必须按下所有4个键。
答案 2 :(得分:68)
Right click -> Source -> Generate setters and getters
但为了使它更方便,来自Windows -> Preferences -> General -> Keys
的{{3}} ALT + SHIFT + G
答案 3 :(得分:37)
所有其他答案都只关注IDE级别,这些并不是生成getter和setter的最有效和最优雅的方法。 如果你有几十个属性,相关的getter和setter方法将使你的类代码非常详细。
我用来自动生成getter和setter的最好方法是在java项目中使用项目lombok注释,lombok.jar将在编译java代码时生成getter和setter方法。
你只关注类属性/变量的命名和定义,lombok将完成其余的工作。这很容易维护您的代码。
例如,如果要为age
变量添加getter和setter方法,只需添加两个lombok注释:
@Getter @Setter
public int age = 10;
这等于代码:
private int age = 10;
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
您可以在此处找到有关lombok的更多详细信息:Project Lombok
答案 4 :(得分:30)
生成吸气剂的方法&塞特犬 -
1)按 Alt + Shift + S ,然后 R 强>
2)右键单击 - >来源 - >生成Getters&制定者
3)转到来源菜单 - >生成Getters&制定者
4)转到 Windows菜单 - >偏好 - >一般 - >键(在文本字段上写入生成Getters& Setters)
5)点击该字段的错误灯泡 - >创造吸气者&塞特斯...
6)按 Ctrl + 3 并编写getter&在文本字段上设置选择器然后选择选项Generate Getters&塞特斯
如果 Mac OS 按Alt + cmd + S,则选择Getters&塞特斯
答案 5 :(得分:11)
右击 - >生成getter和setter可以很好地完成工作但是如果你想在windows中的eclipse中创建一个键盘快捷键,你可以按照以下步骤操作:
希望这有帮助!
答案 6 :(得分:9)
不确定
使用“源”菜单或选定字段或类型的上下文菜单中的“生成Getter和Setter”,或使用类型中的文本选择打开对话框。 Generate Getters and Setters对话框显示所选类型的所有字段的getter和setter。方法按类型的字段分组。
请查看help documentation了解详情。
答案 7 :(得分:8)
是。右键单击代码,您会看到弹出的菜单;在它旁边有“Source”,“Generate Getters and Setters”和,你可以在我的系统上看到快捷键,即Alt + Shift + S和R.
同样,您可以导航到该主菜单中的其他子菜单,通过键入相应的快捷方式,直接进入子菜单而不是主上下文菜单,然后可以从菜单中选择或键入另一个字母从列表中选择。
答案 8 :(得分:7)
在 Mac OS 上Alt+Cmd+S
然后选择“... Getters and Setters”
答案 9 :(得分:7)
我更喜欢先创建私有字段
private String field;
Eclipse将自动突出显示该变量,方法是将光标放在新变量上,按Ctrl + 1.然后它将为您提供Create getter和setter的菜单。
我按下Ctrl + 1,因为它对我接下来的想法更加明智。
答案 10 :(得分:5)
按Alt + Shift + S + R ...然后只选择您必须生成Getters或Setter或两者的所有字段
答案 11 :(得分:4)
有一个开源jar知道为Lombok,您只需添加jar然后使用@Getter & @Setter注释您的POJO,它将自动创建getter和setter。
除此之外,我们可以使用其他功能,例如@ToString,@EqualsAndHashCode以及其他很酷的功能,可以从应用程序中删除香草代码
答案 12 :(得分:3)
Eclipse>来源>生成Getters和Setter
答案 13 :(得分:3)
**在Eclipse Ide中
用于生成setter和getter - > alt + shift + s + r然后Alt A然后点击ok;
仅生成getter - > alt + shift + s + r然后按g然后单击ok按钮;
仅生成setter - > alt + shift + s + r然后按l然后单击ok按钮; **
答案 14 :(得分:2)
右键单击要为其生成getter和setter的属性,然后选择
Source -> Generate Getters and Setters...
答案 15 :(得分:2)
1)转到 Windows->偏好设置 - >常规 - >密钥
2)选择command
“生成获取者和设置者”
3)在Binding
, 按快捷键 以便使用(例如 Alt + Shift + G )< / p>
4)点击应用,您就可以了
答案 16 :(得分:1)
答案 17 :(得分:1)
使用Project Lombok或更好的Kotlin作为您的Pojos。
(另外,将Kotlin添加到你的简历中;))
这:
public class BaseVO {
protected Long id;
@Override
public boolean equals(Object obj) {
if (obj == null || id == null)
return false;
if (obj instanceof BaseVO)
return ((BaseVO) obj).getId().equals(id);
return false;
}
@Override
public int hashCode() {
return id == null ? null : id.hashCode();
}
// getter setter here
}
public class Subclass extends BaseVO {
protected String name;
protected String category;
// getter setter here
}
会变成这样:
open class BaseVO(var id: Long? = null) {
override fun hashCode(): Int {
if (id != null)
return id.hashCode()
return super.hashCode()
}
override fun equals(other: Any?): Boolean {
if (id == null || other == null || other !is BaseVO)
return false
return id.hashCode() == other.id?.hashCode()
}
}
@Suppress("unused")
class Subclass(
var name: String? = null,
var category: String? = null
) : BaseVO()
或者使用Kotlin&#34;数据&#34;类。你最终编写了更少的代码行。
答案 18 :(得分:1)