PHP5 には多くのオブジェクト指向の考え方が追加されています。PHP5 のオブジェクト指向の考え方は Java のオブジェクト指向の考え方に近いものです。ここでは、PHP5 を学習している友人の役に立つことを願って、PHP5 の static キーワードと const キーワードの機能について説明します。
(1) 静的
クラス内の static キーワードは、静的メンバーがクラスに属し、どのオブジェクト インスタンスにも属さないため、外部アクセスを制限できることを示します。インスタンスを共有すると、プログラムがメンバーを完全に保護できます。クラスの静的変数はグローバル変数に非常に似ており、グローバル関数と同様に、クラスのすべてのインスタンスで共有できます。クラスの静的メソッドは、クラスの静的プロパティにアクセスできます。また、静的メンバーには self を使用してアクセスする必要があります。これを使用するとエラーが発生します。
(これと自分自身の類似点と相違点については、 http://blog.csdn.net/heiyeshuwu/archive/2004/11/03/165828.aspxを参照してください)
(2) 定数
const は、C の #define に似た定数を定義するキーワードです。プログラム内で値を変更するとエラーが発生します。
上記のコードの例を示します: (注: 次のコードは phpe.net からのものです)
<?php
class Counter
{
private static $count = 0;//静的プロパティを定義する
const VERSION = 2.0;//定数を定義する
//コンストラクター
function__construct()
{
self::$count++;
}
//デストラクタ
関数__destruct()
{
自分::$カウント--;
}
//静的メソッドを定義する
静的関数 getCount()
{
自分自身を返します::$count;
}
}
//インスタンスを作成する
$c = new Counter();
//印刷を実行します。
print( Counter::getCount(). "<br>n" ); //クラス名の直接入力を使用して静的メソッドにアクセスします Counter::getCount
//クラスのバージョンを出力します
print( "使用したバージョン: " .Counter::VERSION. "<br>n" );
さて
、基本的にこの時点で、私は自分の心の中で知っていることを明確にしましたが、まだ分かっていないような気がします。静電気に少し不快感を感じています。理解しています。アドバイスをお願いします。
私のメールアドレス: [email protected]
WriteTime 2004-11-3 21:00
http://dev.csdn.net/author/heiyeshuwu/23f0d08c11bc4509b41844855d5c7063.html