私はクラスA<X, Y>
を持っています。それをA<Y, X>
にリファクタリングして、それに対するすべての参照も同様に変更されるようにします。 EclipseでJavaでタイプパラメータを逆にする方法
答えて
私はそれがまだEclipseで実施されているとは思わないパラメータの順序を変更することができます。 A|B|C
はA
とA
のすべてのサブタイプ、例えばB
とC
を意味する(これは、しかし...
、むしろ稀リファクタリングだがA
下のあなたのタイプの階層があまりにも複雑ではない場合は、まだ、この正規表現検索は、交換してください使用してみてください):
\b(A|B|C)<\s*(\w+)\s*,\s*(\w+)\s*>
更新:あなたはより洗練されたものを一致させたいため、)人工改行せずに(これを試してみてください。
\b(A|B|C)<
\s*((?:\w+|\?)(?:\s+(?:extends|super)\s+(?:\w+|\?))?)\s*,
\s*((?:\w+|\?)(?:\s+(?:extends|super)\s+(?:\w+|\?))?)\s*>
012 Eclipseを使っているので
は、あなたは、Eclipse(または良いリファクタリングを持っている別のツールを使用していない場合は、手動で正確
'extended'キーワードの正規表現検索/置換のオプションを含めるとよいでしょう –
True! –
PS:これが1/2hで実行されても私を非難しないでください... ;-) –
法上で右クリックし、Refactor->変更メソッドのシグネチャは、あなたがそこに
が必要です。OPは、メソッドパラメータではなく、ジェネリッククラスタイプのパラメータの切り替えについて質問します。 –
これはメソッドではなく、クラス宣言です。 –
ああ、私の間違い、私は間違った質問を読んでいます。この場合、私はEclipseに何かが実装されているとは思わない – jasalguero
ごとの交換を確認することができ、
$1<$3, $2>
によって置き換える - あなたの場合は強くお勧めします
最初に: TDDを使用している場合は、変数が正しく交換された場合にのみ成功するテストを作成します。次に、メソッドのシグネチャを変更し、テストに合格することを確認します。
第二: 1.そのメソッドのコンパイルを失敗しているラインのそれぞれに 2.すべての呼び出しにコンパイルエラーがスローされますメソッドシグネチャから2番目のパラメータを削除して、慎重に変数をスワップ 3 2番目の変数を新しいメソッドの署名に戻します。 4.いくつかのテストを実行して、それが期待通りに機能することを確認します。
2番目の方法は明らかに醜いです。しかし、リファクタリングのサポートが良好なIDEを使用していない場合は、コンパイルエラーがそのメソッドへの呼び出しの100%をキャプチャするのに適しています(少なくともプロジェクト内では)。他の人や他のプログラムで使用されているコードライブラリを作成している場合は、その変更を影響を受けるすべての関係者に伝えることがはるかに複雑になります。
'vi'でも正規表現を知っています! ;-) –
...しかし、良い点、そうでなければ –
- 1. JavaでSystem.loadLibraryを逆にする方法
- 2. 正しいJson逆シリアル化をJavaオブジェクトにする方法は?
- 3. Real Javaが優先度逆転を回避する方法
- 4. djangoでユーザパスワードを逆コンパイルする方法
- 5. Rの列を逆にする方法
- 6. リンクハッシュマップを逆にトラバースする方法は?
- 7. 正規化を逆にする方法
- 8. grep式を逆にする方法
- 9. PHP:JSON配列を逆にする方法
- 10. `git submodule init`を逆にする方法
- 11. WPFストーリーボードアニメーションを逆にする方法は?
- 12. ジオコードを逆にする方法は?
- 13. jacksonを使ってjsonリストをJavaオブジェクトに逆シリアル化する方法
- 14. Javaプロパティファイルで指定されたBeanを逆シリアル化する方法は?
- 15. Java:浮動小数点配列を逆順にソートする方法は?
- 16. JSONをJava enumに逆シリアル化する
- 17. 配列を逆にする方法はアセンブリですか?
- 18. 文字列をJavaのファイルに変換する方法とその逆の方法はありますか?
- 19. Java Generics ..コンストラクタヘッダのクラス名の後にタイプパラメータを使用できません
- 20. FMXファイルを逆コンパイルする方法
- 21. CommandResultを逆シリアル化する方法
- 22. システムコールを逆アセンブルする方法
- 23. Git:コミットを逆マージする方法は?
- 24. asp.net Webサイトを逆コンパイルする方法
- 25. タイプパラメータを持つJava発行初期化クラス
- 26. ggplotでポイントサイズを逆にする方法は?
- 27. Mysqlでデフォルトの順序を逆にする方法は?
- 28. JavaScriptでオブジェクトを逆にする方法は?
- 29. Javaのオブジェクトの一部を逆シリアル化する方法はありますか?
- 30. タイプパラメータ制約はクラス
申し訳ありませんが、私は 'A' –