2

私は約20のプロパティを持つクラスを持っています。プロパティが null でない場合、セッターは例外をスローする必要があります。以下のようなもの

public void setLastname(String lastname) {
 if(this.lastname!=null)
    throw new IlegalArgumentException("lastname already set");
 this.lastname=lastname;
}

IntelliJ でそのようなセッターを自動生成するにはどうすればよいですか?

4

3 に答える 3

3

ライブ テンプレートを作成できます。

http://www.jetbrains.com/idea/webhelp/creating-and-editing-live-templates.html

これは次のように動作するはずです:

public void set$CAP_SELECTION$(String $SELECTION$) {
 if(this.$SELECTION$!=null)
    throw new IlegalArgumentException("$SELECTION$already set");
 this.$SELECTION$=$SELECTION$;
}

あなたはただ書く:

姓、テストを選択してテンプレートを使用

CAP_SELECTION は、大文字の種類の変数です($SELECTION)

于 2013-08-16T21:18:31.297 に答える
3

IntelliJ IDEA には getter/setter テンプレートをカスタマイズする方法がありません。このリクエストに投票してください。

回避策として、サラウンド ライブ テンプレートを作成します。このようにして、変数を のように入力しlastname、それを選択して、選択範囲を

public void setLastname(String lastname) {
 if(this.lastname!=null)
    throw new IlegalArgumentException("lastname already set");
 this.lastname=lastname;
}

詳細については、ドキュメントを参照してください。

于 2013-08-16T21:16:45.373 に答える