/*
+---------------------------------------------- -- ----------------------------------+
| = この記事は Haohappy<
| = 不必要なトラブルを避けるため、転載はご遠慮ください
|すべての PHP 愛好家が一緒に進歩することを願っています
| = PHP5 Research Center: http://blog.csdn.net/haohappy2004
+--------- ------ -------------------------------------------- ------ ---+
*/
セクション 7 -- クラスの静的メンバー
クラスの静的メンバーは通常のクラス メンバーとは異なります。静的メンバーは、クラスのインスタンスとは何の関係もありません。静的メンバーは、クラス自体を実装するために使用されますが、特定のオブジェクトの関数とデータは含まれません。
静的プロパティが含まれます。データはクラス内にカプセル化され、クラスのすべてのインスタンスで共有できます。実際、固定クラスに属し、アクセス方法が制限されていることに加えて、クラスの静的プロパティは、クラスのグローバル変数と非常に似ています。 function
次の例では、静的プロパティ Counter::$count を使用します。これは Counter クラスに属しており、Counter のインスタンスには属しません。this を使用して参照することはできませんが、self または を使用できます。この例では、getCount メソッドは Counter::$count ではなく self::$count を返します。
静的メソッドは、特定のオブジェクトと関係のない機能をカプセル化する必要があります。静的メソッドはグローバル関数とよく似ており、アクセス修飾子に関係なく、クラスのプロパティに完全にアクセスでき、
In 6.3 の例では、getCount は通常のメソッドです。 PHP は、このメソッドが使用されていないにもかかわらず、この変数を作成します。ただし、場合によっては、この変数が存在しない場合でも、この変数が有効であることを期待します。オブジェクトから呼び出す場合は、静的メソッドを使用する必要があります。PHP は、オブジェクトから呼び出した場合でも、この変数を静的メソッド内に作成しません。例 6.7 は、getCount を静的メソッドに変更したものです。 -> 演算子を使用して getCount を呼び出すことはできませんが、this-> を使用して呼び出すと、エラーが発生します。 2 つの例を比較することで、
//static メソッドと通常のメソッドの違いを簡単に把握でき、これが成立しているかどうかを確認するメソッドを作成できます。もちろん、static キーワードを使用した場合、このメソッドはどのように呼び出されても常に静的になります。クラスでは public static を使用する必要はなく、定数属性を定義することもできます。 const キーワードを使用します。定数属性は常に静的です。クラスをインスタンス化するオブジェクトの属性ではありません。
コードをコピーします。コードは次のとおりです。 :