目次
[A] 継承
[B] ポリモーフィズム
[C] カプセル化
[1] スーパークラス
[2] サブクラス
[3] 多重継承の禁止
[4] メソッドのオーバーライド
[5] メソッドの実装とインターフェイスの実装
[6] 抽象メソッド
[7] 抽象クラス
[8] インターフェイス
[9] マジックメソッド
[10] オーバーロード
[11] 遅延静的束縛
[12] 参照
[13] 名前空間のインポート
[14]
違い
* (メソッドの実装)
メソッドの宣言直後にある{}で囲まれた部分が
メソッドの実装である。
* (インターフェイスの実装)
インターフェイスをimplementsすることを
インターフェイスの実装と呼ぶ。
[6] 抽象メソッド
概要
* オーバーライドを強要するメソッド
* メソッドの中身は空。
[7] 抽象クラス
概要
* 抽象メソッドを「含む」クラス
存在意義
* ポリモーフィズムの実現
* スーパークラスの構造を理解できていない人が
中身は似ているのに名前の違うメソッドを
新たに生み出してしまうのを防ぐ。
* スーパークラスで定義されたメソッドをサブクラスで
必ずオーバーライドするように制約をかける。
(=> 抽象メソッドの身を)
(=> 抽象メソッドの中身は記載してはいけない
{}を付けてはいけない)
やりたいこと
決まりごと
概要
* 抽象メソッド「のみで構成される」クラス
[14] トレイト
概要
トレイトは継承と似たPHPの機能で、汎用性の高いメソッドなどをトレイトとしてまとめておき、
他の複数のクラスで共通して使う、といった使い方をする。