web-dev-qa-db-ja.com

Eclipseでゲッターとセッターを自動的に生成する方法はありますか?

私は新しいAndroidプロジェクト(Java)に取り組んでいて、たくさんの変数を持つオブジェクトを作成しました。私はそれらすべてにゲッターとセッターを追加することを計画しているので、私は不思議に思っていました:与えられたクラスにゲッターとセッターを自動的に生成するためのショートカットはEclipseにありますか?

238
Phil

目的のクラスのソースコードウィンドウにコンテキストメニューを表示します(つまり、右クリック)。それからSourceサブメニューを選択してください。そのメニューからGenerate Getters and Setters...を選択すると、ウィザードウィンドウが表示されます。

Source -> Generate Getters and Setters...

ゲッターとセッターを作成したい変数を選択してOKをクリックします。

335
Hagai Cibulski

Eclipse Junoでは、デフォルトで、ALT + SHIFT + S、Rを押すと、getter/setterダイアログボックスが開きます。 4つのキーをすべて押す必要があることに注意してください。

69
RoboAlex

Right click -> Source -> Generate setters and getters

しかし、もっと便利にするために、 私はいつもこれをにマッピングしています ALT+SHIFT+G Windows -> Preferences -> General -> Keysから

68
Bozho

他のすべての答えはIDEレベルに焦点を当てているだけですが、これらはゲッターとセッターを生成するための最も効果的で洗練された方法ではありません。関連するゲッターメソッドとセッターメソッドはクラスコードを非常に冗長にします。

私がこれまでゲッターとセッターを自動的に生成するために使った最良の方法は、あなたのJavaプロジェクトでプロジェクトのlombokアノテーションを使うことです

あなたはクラスの属性/変数の命名と定義に焦点を当てるだけで、残りはlombokが行います。これはあなたのコードを保守するのは簡単です。

たとえば、age変数にgetterメソッドとsetterメソッドを追加する場合は、2つの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

38
dongpf

ゲッターとセッターを生成する方法 -

1)PressAlt+Shift+Sそれから R
2)右クリック - >ソース - >生成ゲッターとセッター
3)ソースメニュー - > [ゲッターとセッターの生成]に移動します。
4)Windowsメニュー - > [設定] - > [一般] - > [キー](テキストフィールドにGenerate Getters&Settersを書き込む)に移動します。
5)エラー電球をクリックしてくださいフィールド - > getterとsettersを作成してください...
6)押すCtrl+3そしてテキストフィールドにゲッターとセッターを書き、オプションGenerate Getters&Settersを選択します。

if Mac OS Alt + cmd + Sを押してから、Getters&Settersを選択します。

30
Deepak Gupta

右クリック - >ゲッターとセッターの生成はうまく機能しますが、WindowsのEclipseでキーボードショートカットを作成する場合は、次の手順に従います。

  1. ウィンドウ>設定に移動します
  2. General> Keysに移動します。
  3. 「クイックアシスト - フィールドの取得/設定メソッドの作成」のリスト
  4. 下の "Binding"テキストフィールドに、必要なキーを押します(私の場合は、Alt + Shift + Gを使用します)。
  5. ApplyとOkを押してください
  6. Javaエディタで、取得メソッドまたは設定メソッドを作成するフィールドを選択し、手順4で設定したショートカットを押します。このウィンドウで[OK]をクリックしてメソッドを作成します。

お役に立てれば!

11
sufinawaz

もちろんです。

ダイアログを開くには、選択したフィールドまたはタイプの「ソース」メニューまたはコンテキストメニューから「ゲッターとセッターを生成」を使用します。 「ゲッターとセッターを生成」ダイアログに、選択したタイプのすべてのフィールドのゲッターとセッターが表示されます。メソッドはタイプのフィールドによってグループ化されています。

詳細については ヘルプドキュメント をご覧ください。

9
vcsjones

はい。コードを右クリックするとメニューがポップアップ表示されます。その横に "Source"、 "Geneters Getters and Setters"があります。ショートカットはAlt + Shift + SとRです。システム。

同様に、適切なショートカットを入力してメインメニューの他のサブメニューに移動することもできます。メインコンテキストメニューの代わりにサブメニューに直接アクセスして、メニューから選択するか、リストから選択する別の文字を入力できます。

8
Zds

Mac OSの場合はAlt+Cmd+Sになります

7

最初にプライベートフィールドを作成することを好みます

private String field;

Eclipseは、カーソルを新しい変数の上に移動してCtrl + 1を押すことにより、変数を自動的に強調表示します。その後、Create getter and setterというメニューが表示されます。

Ctrl + 1を押すのは、次に欲しいと思うことについてもう少し知的だからです。

7
David Chiew

Alt + Shift + S + R ...を押して、ゲッターまたはセッター、あるいはその両方を生成する必要があるすべてのフィールドのみを選択します。

5
Sagar Sawant

Lombok として知られている利用可能なオープンソースのjarファイルがあります、あなたは単にjarを追加してから @ GetterであなたのPOJOに注釈を付けます&@Setter 自動的にゲッターとセッターを作成します。

これとは別に、 @ ToString@ EqualsAndHashCode のような他の機能を使用することができます。そしてあなたのアプリケーションからVanillaコードを削除するその他の可愛いもの

4
rajadilipkolli

Eclipse>ソース>ゲッターとセッターの生成

3
user2332195

** Eclipse Ideで

セッターとゲッターの両方を生成するために - > alt + shift + s + rそしてAlt AそしてそれからOKをクリックする。

ゲッターのみを生成するには - > alt + shift + s + rを押してからgを押し、次にOKボタンをクリックします。

セッターのみを生成するには - > alt + shift + s + rを押してからlを押し、次にOKボタンをクリックします。**

3
abhinav

ゲッターとセッターを生成したいプロパティを右クリックして選択します。

Source -> Generate Getters and Setters...
2
Eduardo Dennis

1)ウィンドウ - >設定 - >一般 - >キー

2)command "ゲッターとセッターの生成"を選択します

3)Bindingで、ショートカットを押して使います(likeAlt + Shift + G

4)適用をクリックしてください。

2
Prateek Joshi

あなたのPojosには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の "data"クラスを使ってください。あなたは、さらに少ないコード行を書くことになるでしょう。

1
Wolf359
  • すべての変数に対してALT + SHIFT + S次にRを押してすべて選択するALT + Aを押す

  • 単一変数の場合変数にカーソルを合わせてCTRL + 1を押し、提案の2番目のオプションに進みます。

ScreenShot

1
Rohit Mewada
  1. Eclipseでクラスファイルを開く
  2. クラス名をダブルクリックするか、それを強調表示します
  3. 次に、「ソース」 - >「コードの挿入」にナビゲートします
  4. Getter and Setterをクリックしてください。

ゲッター/セッターメソッドを生成するフィールドを選択するためのポップアップが開きます。フィールドを選択して「生成」ボタンをクリックしてください。 enter image description hereenter image description here