##静的メゾット
->インスタンスを生成しなくてもクラスから直接呼び出すメゾット
メゾット定義に staticキーワードを加えるだけ
##静的プロパティ
オブジェクト経由せずに、クラスから直接に呼び出すことができるプロパティです。
クラス内は、 self::プロパティ
##クラス定数
->classブロックの中で定義された定数のことです。
##カプセル化
->クラス機能のうち、必要ないものを隠す
##アクセス修飾子
->public,protecd,privateの3つがある
###public
->どこからでもアクセスできる
###protected
->現在のクラス、サブクラスのみアクセス可能
###private
->現在のクラスの中でのみアクセスできる
##アクセスメゾット
private xxx
public function getプロパティ名(): データdata {
return $this->プロパティ名;
public function setプロパティ名(データ型 引数) {
$this->プロパティ名= 引数;
##継承
->継承元=スーパークラス
継承の結果=サブクラス
class サブクラス extends スーパークラス名 {
}
##メゾットのオーバライド
->スーパークラスで定義された機能を、サブクラスで再定義すること
##オーバライトの禁止
->final修飾子使用
##ポリモーフィズム
->同名のメゾットで異なる挙動を実現する
##抽象化メゾット
-> 空のメゾット
オーバライドしてサブメゾットでやる
##継承のルール
->PHPで、多重継承が認められていない
つまり一度に継承できるのクラスは、一度だけ
##インタ-フィイス名
->支配のメゾットがすべて抽象メゾットである.
・できること
・抽象メゾット、定数
・多重継承が可能
親クラス
interface インターフェイス名 {
}
子クラス
class 実装クラス名 implements インターフェイス名 {
///クラス実装
}
##instanceof演算子
##無名クラス
->名前を持たないクラス
##トレイト
->再利用可能コード(メゾット、プロパティ)をまとめて切り出す
制約がある
・定数はもてない
・クラスの継承、インターフェイスの実装はできない
##オブジェクトの代入
オブジェクトは、代入できる
オブジェクトAからBに値コピーしたい場合
cloneを使う
##オブジェクトの比較
==
->同じクラスのインスタンスであること、同じプロパティと値を持つこと
->同じクラスの同じインスタンスを参照すること
##例外処理
スロー
->自分で発生させることもできる
Exceptionクラス
->Exceptionクラスは、PHPが標準で提供する例外クラスであり、スーパークラスです。
エラーの扱い
->PHP7とPHP5では、エラー報告の扱いが違う
PHP7では、Exceptionクラスの上位に、Throwableクラスが導入
名前空間
->namespaceを使う
名前空間はファイルの先頭で定義すること
##クラスのインポート
use命令である