エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
"コンポジション"を知らなかったので軽く調べてみた - Qiita
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
"コンポジション"を知らなかったので軽く調べてみた - Qiita
コンポジションとは 日本語で「混合物」を意味したもので、あるクラスの機能を持つクラスのことを指して... コンポジションとは 日本語で「混合物」を意味したもので、あるクラスの機能を持つクラスのことを指しています。 特定クラスの機能を、自分が作るクラスにも持たせたい場合に、継承を使わずにフィールドとしてそのクラスを持ち、そのクラスのメソッドを呼び出すメソッドを持たせることで、クラスに他のクラスの機能を組み込むことができる。 メリット 「機能の継承」はクラスの関連図をイメージする際の分かりにくさを回避できる メソッドをワンクッション置くことで融通を効かせられる コンポジションの対象となるクラスは、そのサブクラスも使用できる デメリット 同じメソッドを作らなければならない コンポジションの対象となるクラスに変更があった場合には同じように変更しなければならない。 継承とコンポジションの使い分け 厳密なオブジェクト指向では、継承は「機能の継承」を目的とせず「スーパークラスはサブクラスの一種である」という