タイトルで申し訳ありませんが、これ以上わかりやすいタイトルが思いつきませんでした。
私が開発しているスタンドアロン アプリケーション (大学の課題です) で、この問題に直面して
います。POJO にすぎないエンティティ (またはモデル オブジェクトやビジネス オブジェクトなど) があります。
当然、それらを使用するクラスは多数あります (今後も使用される予定です) が、これらのクラスの一部は値を変更することを許可されるべきではありません (たとえば、セッターを使用して)。オブジェクトを異なるアクセス許可を持つ異なるクラスに渡す必要があると言えます。一部のクラスには読み取り専用、オブジェクトの状態を変更できる他のクラスには読み書き可能です。
例として、オブジェクトに関する情報のみを表示する GUI ウィンドウがあります。このクラスが、オブジェクトの状態を変更する方法を完全に認識しないようにしたいと考えています。
関連する問題 (読み取り専用インターフェース、読み取り専用実装、防御コピーなど) に関する多くのトピックを読みましたが、自分のケースに適したものは見つかりませんでした。
オブジェクトのセッター メソッドへのアクセスを特定のクラスにのみ許可したいとしますが、これを実現する方法が見つかりません。
私は当初、インターフェイスは問題ないと考えていました (たとえばReadOnlyObject
、getter とWriteOnlyObject
setter を使用し、Object
それらの両方を実装する) が、問題は、. それに加えて、getter または setter のみを使用してインターフェイスを記述することが適切な方法であるとは確信していません。WriteOnlyObject
ReadOnlyObject
助けてください!@_@