これはかなり簡単な質問のように思えますが、私は決定的な答えを見つけるのに苦労しています。現在、私はパブリッククラスを持っており、コンストラクターで次のような変数を定義しています。
private String password = "abcd123456";
次に、次のような方法があります。
public String getValue(String inputValue)
{
String returnValue = encryptor.decrypt(inputValue, password);
return returnValue;
}
クラスもパブリックとして定義されています。フォームからこのクラスを参照するとき、私はこれを行っています:
ValueGetter vg = new ValueGetter();
String decryptedValue = vg.getValue("xfr3sf342d#2");
パスワードをプライベートとして定義することで、そのクラスだけがパスワードを見ることができると思います。ただし、デバッグ中の場合は、「vg」変数の上にマウスを置いてオブジェクトの内容を表示すると、パスワードがわかりやすく表示されます。変数パスワードをそのクラスだけに認識させ、コンストラクターで定義する方法はありますか?その変数を使用するクラス内には外部フォームから呼び出すことができるいくつかのメソッドがあるので、各メソッドで変数を再定義する必要はなく、コンストラクターにそれを入れたいと思います。
前もって感謝します!
変数を非表示にする最も明白な理由としてパスワードを使用しましたが、実際には、誰かがクラスへのインターフェイスを作成して、何の意味もない大量のゴミを取得することを望んでいません。オブジェクトから。したがって、beachというクラスと、getBeachBallというメソッドがあるかもしれません。オレンジ色で、xxポンドの空気で膨らんだビーチボールなどが返されます。メソッドを含むクラスには、TableShapeという別の変数があります。この色は常に白で、変更できません。tableShapeは、Beachクラスだけが何かに使用するので、マスクできるかどうか疑問に思っていました。元の呼び出し元は、tableColor変数について何も知りません。