3

例えば:

 public class Person {

    public final int age;
   }

Eclipseで次の自動\半自動を実行する方法はありますか(リファクタリングツールを使用して)

1)年齢の可視性をパブリックからプライベートに変更します。

2)年齢に応じてゲッターを追加する

3)コード内のすべての場所で*.ageを*.get_age()に変更します(* =個人クラスのインスタンス)

そして、iamはfind\replaceソリューションを探していません...:)

4

1 に答える 1

6

「EncapsulateField」リファクタリングを使用できます。ただし、フィールドへの潜在的な書き込みアクセスを保持するために、getterとsetterの両方が生成されます(@Louis Wassermanのおかげで、フィールドがfinalでない場合のみ)。結局のところ、リファクタリングは、その機能を変更せずにコードを再構築することになっています。ただし、少なくともそこから先に進み、セッターを手動で削除して、修正が必要な問題があるかどうかを確認できます。

于 2012-04-24T21:46:07.610 に答える