私はSeat
(コンサートホール用)と呼ばれるスーパークラスを持っています。ポリモーフィッククラスの場合、保護されたインスタンス変数を使用しても問題ありませんか?
GoldSeat
,SilverSeat
およびBronzeSeat
は、そのサブクラスである。
私は常にカプセル化を可能にするためにデータprivate
を保持するように読んできました。
サブクラスでこれらのインスタンス変数を使用するメソッドを記述する必要がある場合は、それをprotected
にすることは許容されますか?類似したスタックオーバーフローの質問のほとんどは、オブジェクト指向の正しい設計に対処するのではなく、アクセス修飾子とそれぞれの処理効率または技術的な違いの違いに焦点を当てています。私が1つを逃した場合は、事前に謝罪し、喜んでレビューします。
サブクラスでgetterメソッドを使用してインスタンス変数を取得できますが、この場合は奇妙に見えますが、少なくともデータはprivate
になります。
はい、問題ありません。 –