カテゴリー:
クラスとオブジェクト
閲覧数:477 配信日:2019-04-16 11:54
トレイトとは?
コードを再利用するための仕組み
・PHP のような単一継承(多重継承できない)言語で、コードを再利用するための仕組みのひとつ
・単一継承の制約を減らすために作られた
継承することなくメンバを他のクラスで使用することが出来る
・いくつかのメソッド群を異なるクラス階層にある独立したクラスで再利用できるようにする
→ 「複数のクラスで使用する便利な機能」はトレイトで実装する
クラスとの相違点
トレイト自身のインスタンスを作成することは出来ない
優先順位
1.現在のクラスのメンバー
2.トレイトのメソッド
・「基底クラスから継承したメンバー」よりも、「トレイトで追加したメンバー」のほうが優先される
3.継承したメソッド