★★★【オブジェクト指向】 自分の辞書

目次

[A] 継承
[B] ポリモーフィズム
[C] カプセル化
[1] スーパークラス
[2] サブクラス
[3] 多重継承の禁止
[4] メソッドのオーバーライド
[5] メソッドの実装とインターフェイスの実装
[6] 抽象メソッド
[7] 抽象クラス
[8] インターフェイス
[9] マジックメソッド
[10] オーバーロード
[11] 遅延静的束縛
[12] 参照
[13] 名前空間のインポート
[14]




[5] メソッドの実装とインターフェイスの実装

違い

* (メソッドの実装)
   メソッドの宣言直後にある{}で囲まれた部分が
   メソッドの実装である。
* (インターフェイスの実装)
   インターフェイスをimplementsすることを
   インターフェイスの実装と呼ぶ。




[6] 抽象メソッド

概要

* オーバーライドを強要するメソッド
* メソッドの中身は空。




[7] 抽象クラス

概要

* 抽象メソッドを「含む」クラス

存在意義

* ポリモーフィズムの実現
* スーパークラスの構造を理解できていない人が
   中身は似ているのに名前の違うメソッドを
   新たに生み出してしまうのを防ぐ。
* スーパークラスで定義されたメソッドをサブクラスで
   必ずオーバーライドするように制約をかける。
   (=> 抽象メソッドの身を)
   (=> 抽象メソッドの中身は記載してはいけない  
          {}を付けてはいけない)

やりたいこと

決まりごと




[8] インターフェイス

概要

* 抽象メソッド「のみで構成される」クラス




[14] トレイト

概要

トレイトは継承と似たPHPの機能で、汎用性の高いメソッドなどをトレイトとしてまとめておき、
他の複数のクラスで共通して使う、といった使い方をする。