エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
【Effective Java】項目16:継承よりコンポジションを選ぶ - The King's Museum
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
【Effective Java】項目16:継承よりコンポジションを選ぶ - The King's Museum
継承よりもコンポジションを選ぶべきである。 継承の利用 継承はコードを再利用するための一般的な手法... 継承よりもコンポジションを選ぶべきである。 継承の利用 継承はコードを再利用するための一般的な手法だが、常に最適なものとは限らない。 継承を安全に利用することができるのは以下の場合である。 スーパークラスもサブクラスも特定のパッケージ配下にある場合 拡張のために設計・文書化されているクラスを拡張する場合 インタフェースをインタフェースが継承するインタフェース継承の場合 上記の場合以外では、継承は安全に利用できない。 継承はカプセル化を破壊する。 そのため、サブクラスはスーパークラスの実装に依存することになり、スーパークラスの実装が変わった場合、意図せずサブクラスの挙動が変わる可能性がある。 継承の問題 サブクラスの危険性を示すため、HashSet を拡張した InstrumentedHashSet クラスを例にとる。 このクラスは、既存の HashSet に追加された要素の数をカウントする