[英]Is there a way to automatically generate getters and setters in Eclipse?
我正在開發一個新的Android
項目 ( Java
),並創建了一個包含大量變量的對象。 由於我打算為所有這些添加 getter 和 setter,我想知道: Eclipse
是否有快捷方式可以在給定的類中自動生成 getter 和 setter?
在所需類的源代碼窗口中調出上下文菜單(即右鍵單擊)。 然后選擇Source
子菜單; 從該菜單中選擇Generate Getters and Setters...
將出現一個向導窗口。
Source -> Generate Getters and Setters...
選擇您希望為其創建 getter 和 setter 的變量,然后單擊OK
。
在 Eclipse Juno 中,默認情況下, ALT+SHIFT+S,R打開 getter/setter 對話框。 請注意,您必須按所有 4 個鍵。
所有其他答案都只關注 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
生成 Getter 和 Setter 的方法 -
1)按Alt + Shift + S ,然后按R
2)右擊-> Source -> Generate Getters & Setters
3) 轉到Source 菜單-> Generate Getters & Setters
4) 轉到Windows 菜單-> Preferences -> General -> Keys (Write Generate Getters & Setters on text field)
5)單擊該字段的錯誤燈泡-> 創建 getter 和 setter ...
6)按Ctrl + 3並在文本字段上寫入 getters & setters 然后選擇選項 Generate Getters & Setters
如果Mac OS按 Alt+cmd+S 然后選擇 Getters & Setters
右鍵單擊-> 生成 getter 和 setter 可以很好地完成這項工作,但是如果您想在 windows 中的 eclipse 中創建鍵盤快捷鍵,您可以按照以下步驟操作:
希望這可以幫助!
當然。
使用“源”菜單或所選字段或類型的上下文菜單中的“生成 Getter 和 Setter”,或類型中的文本選擇來打開對話框。 生成 Getter 和 Setter 對話框顯示所選類型的所有字段的 getter 和 setter。 這些方法按類型的字段分組。
查看幫助文檔以獲取更多信息。
在Mac OS 上,它是Alt+Cmd+S
然后選擇“...Getters and Setters”
是的。 右鍵單擊代碼,您會看到一個彈出菜單; 有“源”,“生成getter和setter”,並在它旁邊,你可以看到快捷鍵,其鍵是Alt + Shift + S和R我的系統上。
同樣,您可以導航到該主菜單中的其他子菜單,通過鍵入適當的快捷方式,您可以直接進入子菜單而不是主上下文菜單,然后可以從菜單中選擇或鍵入另一個字母以從列表中選擇。
我更喜歡先創建私有字段
private String field;
Eclipse 將自動突出顯示變量,通過將光標定位在新變量上,按 Ctrl + 1。然后它會為您提供創建 getter 和 setter 的菜單。
我按 Ctrl + 1 是因為它對我認為您接下來想要的內容更加智能。
按 Alt+Shift+S+R... 然后只選擇您必須生成 Getter 或 Setter 或兩者的所有字段
有一個名為Lombok 的開源 jar,您只需添加 jar,然后使用@Getter 和 @Setter注釋您的 POJO,它將自動創建 getter 和 setter。
除此之外,我們還可以使用其他功能,例如@ToString 、 @EqualsAndHashCode和其他一些很酷的東西,它們可以從您的應用程序中刪除普通代碼
Eclipse > 源代碼 > 生成 Getter 和 Setter
**在 Eclipse IDE 中
用於生成 setter 和 getter -> alt+shift+s+r 然后 Alt A 然后單擊確定;
只生成 getter ->alt+shift+s+r 然后按 g 然后點擊 ok 按鈕;
只生成 setter ->alt+shift+s+r 然后按 l 然后點擊 ok 按鈕;**
右鍵單擊要為其生成 getter 和 setter 的屬性,然后選擇
Source -> Generate Getters and Setters...
1)轉到Windows->首選項->常規->鍵
2) 選擇command
“ Generate Getters and Setters ”
3) 在Binding
,按喜歡使用的快捷鍵(如Alt+Shift+G )
4)點擊申請,你就可以開始了
為您的 Pojo 使用 Project Lombok 或更好的 Kotlin。
(另外,將 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 的“數據”類。 您最終會編寫更少的代碼行。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.