クラスとオブジェクト指向
クラスは、そのような人や本など、実世界のものを定義するために使用されています。 事のクラスが定義されていたら、それをインスタンス化することができます。
サンプルクラスは以下の通りです。
Book クラスBook
{
title ;プライベート$タイトル;
author ;プライベート$作家;
isbn ;プライベート$ ISBN;
reserved ;予約済みのプライベート$;
Reserve ( )パブリック関数リザーブ()
{
this - > reserved = true ; $この- >予約= TRUE;
}
}
あなたが見ることができるように、クラスは、PHP内の任意の非予約語を使用でき、クラスの名前に続いて、classキーワードを使用して定義されています。 変数や関数がすべてと定 義されている可視性修飾子 。
あなたがpseduoの変数$ thisがクラスで使用されていることがわかります。 この変数は、関数や変数はクラス内から呼び出すことができます。
newを使用して以下に示すようにクラスをインスタンス化して呼び出すことができます。
Creates a instance of a class / / クラスのインスタンスを作成します
book = new Book ( ) ; $本=新しいBook();
Calls the reserve function of the book object . / /は、本オブジェクトのリザーブ機能を呼び出します。
book - > Reserve ( ) ; $本- >準備();
クラスは、静的関数を含めることができます。 静的関数は、通常のオブジェクトメソッドとクラスがインスタンス化する必要はありません。 しかし、静的メソッドは、オブジェクトの非静的変数を使用することはできません。
Book クラスBook
{
title ;プライベート$タイトル;
author ;プライベート$作家;
isbn ;プライベート$ ISBN;
reserved ;予約済みのプライベート$;
bookTypes = array ( ' Reference ' , ' Fiction ' ) ;プライベート静的$ bookTypes =配列( 'リファレンス'、 'フィクション');
Reserve ( )パブリック関数リザーブ()
{
this - > reserved = true ; $この- >予約= TRUE;
}
GetBookType ( $ index )公共の静的関数GetBookType($インデックス)
{
self : : $ bookTypes [ $ index ] ;自己を返す:: $ bookTypes [$インデックス];
}
}
あなたは上記を参照できるので、静的関数は、$ bookTypesなどの静的なクラス変数を使用することができます。 静的変数または関数は、以下に示すように、 自己キーワードまたはクラス名クラスの内側と外側から、それだけでクラス名のいずれかを介してアクセスすることができます。
This prints Reference / /このプリント参照
Book : : GetBookType ( 1 ) ; エコーブック:: GetBookType(1);
クラス変数のデフォルト値は定数式なので、ありませんconcatanationまたは作成する新しいクラスでなければなりません!
コメントが提供されていません。
ドミニクスキナーによって書かれた
最終更新日:2011年10月25日午前16時○○分38秒を