PHPの静的プロパティと静的メソッドとは何ですか

青灯夜游
リリース: 2023-03-14 18:32:01
オリジナル
3129 人が閲覧しました

PHP では、static キーワードによって変更されたメンバー プロパティおよびメンバー メソッドを静的プロパティおよび静的メソッドと呼びます。静的プロパティおよび静的メソッドにアクセスするための構文は、「クラス名::$static プロパティ」および「クラス名」です。 ::staticmethod()」。

PHPの静的プロパティと静的メソッドとは何ですか

このチュートリアルの動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 コンピューター

PHP では、static キーワードによって変更されますメンバー プロパティとメンバー メソッドは、静的プロパティと静的メソッドと呼ばれます。ここでは、これらを総称して静的メンバーと呼びます。クラス内の静的メンバーは、クラス内の一般的なメンバーとは異なります。静的メンバーはオブジェクトにインスタンス化されません。クラスをインスタンス化せずに、クラスを介して静的メンバーにアクセスできるとします。

クラス内で静的変数を宣言するのは簡単です。クラスの通常のメンバーの前に static キーワードを追加して、この通常のメンバーを静的メンバーに変えることができます。このようにして、クラスをインスタンス化せずに、クラス内のこれらの静的メンバーに直接アクセスできます。静的メンバーにアクセスするための構文形式は次のとおりです。

类名::$静态属性 类名::静态方法()
ログイン後にコピー

::シンボルは範囲解決演算子と呼ばれ、静的メンバー、静的メソッド、および定数にアクセスするために使用されます。のクラスのメンバーとメソッドをオーバーライドするためにも使用されます。

クラス内のメンバー メソッドの静的プロパティにアクセスする場合は、静的プロパティの名前の前に演算子self::を追加するだけです。

次は、静的メンバーの定義を示す簡単な例です:

'; public $title = 'PHP教程'; public static function url() { echo self::$name; echo '//m.sbmmt.com/
'; echo $this -> title; } } Website::url(); ?>
ログイン後にコピー

実行結果は次のとおりです:

PHPの静的プロパティと静的メソッドとは何ですか

注: 静的メソッドでは、静的変数のみを呼び出すことができ、通常の変数は呼び出すことができません。通常のメソッドは静的変数を呼び出すことができます。

静的メンバーを使用すると、オブジェクトをインスタンス化する必要がなくなるだけでなく、オブジェクトが破棄された後も、変更された静的データを次回使用できるように保存する機能もあります。以前に紹介したもの 静的変数も同様です。

[例] 静的変数 $num を宣言し、メソッドを宣言し、メソッド内で静的変数を呼び出し、変数の値に 1 を加算し、クラス内でオブジェクトをインスタンス化し、最後にメソッドを呼び出します。クラスメソッド。

 add(); echo '
'; $num2 = new Website(); $num2 -> add(); ?>
ログイン後にコピー

実行結果は次のとおりです:

PHPの静的プロパティと静的メソッドとは何ですか

#静的メンバーはオブジェクトをインスタンス化する必要はありません。クラスが初めてロードされるとき、メモリ領域が割り当てられているため、静的メンバーを直接呼び出す方が高速です。ただし、宣言された静的メンバーが多すぎると、スペースが常に占有されることになり、システムの実行速度に影響します。

#注:

    #サブクラスは親クラスの静的メソッドをオーバーライドできます。
  • メソッド内の静的変数にアクセスするには、:: シンボルを使用する必要があります。$this は使用できません。
  • ##静的メソッドと静的変数はサブクラスによって継承されます。
  • 静的変数には、
  • ->
  • ではアクセスできませんが、

    ::(二重コロン)によってアクセスできます。オブジェクト オブジェクト名 -> を使用して静的メンバー メソッドを直接呼び出すことができます。これは、通常のメソッドを呼び出すのと同じです。

  • 推奨学習: 「

    PHP ビデオ チュートリアル」
  • "

以上がPHPの静的プロパティと静的メソッドとは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!