Eclipse が自動生成する set メソッド シグネチャを変更するにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/1291625

質問

私の現在のプロジェクトでは、インスタンス変数が this で参照されることは決してないというコーディング規約があります。接頭辞を使用し、そのパラメータはインスタンス変数を決して隠すべきではありません。

これにより、セッターは次のようになります。

public void setFoo(final Foo aFoo)
{
  foo = aFoo;
}

残念ながら、Eclipse はデフォルトではそれを生成しません。コードスタイルでは、パラメータプレフィックスリストに を追加することでこれに近づけることができることがわかりましたが、設定メソッドにのみ適用したいので、そこに最後のタグも追加したいと考えています。

テンプレートを使用してこれを実現する方法はありますか?他の構成ですか?

役に立ちましたか?

解決

現在、セッター メソッドのみにパラメーター プレフィックスを適用する唯一の方法は、セッター メソッド用の新しいテンプレートを作成することだと思いますが、このテンプレートはアクセサー ジェネレーターでは使用されません。既存のテンプレートのリストは以下で確認できます。 ->環境設定->ジャワ->編集者->テンプレート, 、これを見てください 質問 テンプレート作成のヒントについては、こちらをご覧ください。

Eclipse 設定を変更して、ワークスペース レベルまたはプロジェクト レベルですべてのタイプの変数にプレフィックス (およびサフィックス) を指定できます。ただし、これはセッターだけでなくすべてのメソッドに適用されます。「クリーンアップ」機能を使用すると、パラメータが最終的なものであることを確認できます。

コード規約を緩和するには、次のようにします。 できた 代わりにすべてのインスタンス変数に接頭辞を付けるように指定すると、パラメータがインスタンス変数をオーバーライドしなくなりますが、そうしたくない場合もあります。


変数プレフィックス

ワークスペース設定を変更するには、次の場所に移動します。 ->環境設定->ジャワ->コードスタイル, をクリックし、リストを編集して好みのプレフィックス/サフィックスを使用します。

プロジェクト設定を変更するには、プロジェクトのプロパティ (オルタナティブ + 入力)、次に選択します Javaコードスタイル, 、 選択する プロジェクト固有の設定を有効にする, をクリックし、ワークスペースと同様に環境設定を編集します。

セッター メソッドに対してのみ特定のプレフィックスを有効にするには、コード テンプレートの内部を調べてセッターを識別して変更する必要があります。


最終パラメータ

すべてのメソッド パラメータが最終的なものであることを確認するには、Java クリーンアップ プロセッサを変更して追加します。 最後の パラメータに。下 ->環境設定->ジャワ->コードスタイル->掃除, をクリックすると、アクティブなプロファイルをコピーまたは編集できます。下 コードスタイル タブで選択 可能な場合は修飾子「final」を使用してください の中に 変数の宣言 セクションを確認してから、 パラメータ が選択されます。実行時にクリーンアップが適用されます ソース->掃除

保存のたびに最終パラメータが自動的に適用されるようにするには、以下の保存アクションを変更します。 ウィンドウ -> **設定->ジャワ->編集者->アクションの保存, 、 確保する 保存時に選択したアクションを実行します ボックスが選択されている場合 (これにより、必要に応じてコードがフォーマットされ、インポートが整理されます)、 追加のアクション オプション、そして 構成、設定, 、次に下に コードスタイル, 、上記と同じように適用します

他のヒント

とてもシンプルです...

  1. プロジェクトのルート プロジェクト フォルダーの下に、というフォルダーを作成します。 .settings (すでに存在している可能性があります)。
  2. このフォルダーに、という名前のテキスト ファイルを作成します。 org.eclipse.jdt.core.prefs
  3. このファイルに次の行を含めます。

org.eclipse.jdt.core.codeComplete.argumentPrefixes=a

以上です、完了です。それはうまくいくはずです。これに関する適切なドキュメントは見つかりませんでしたが、設定できるその他のオプションをいくつか示します。

org.eclipse.jdt.core.codeComplete.argumentPrefixes= org.eclipse.jdt.core.codeComplete.argumentSuffixes= org.eclipse.jdt.core.codeComplete.fieldPrefixes= org.eclipse.jdt.core.codeComplete.fieldSuffixes= org.eclipse.jdt.core.codeComplete.localPrefixes= org.eclipse.jdt.core.codeComplete.localSuffixes= org.eclipse.jdt.core.codeComplete.staticFieldPrefixes= org.eclipse.jdt.core.codeComplete.staticFieldSuffixes=

Eclipseの - >設定 - > Javaの - >コードスタイル - >コードテンプレート - >コード

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top