ホームページ >バックエンド開発 >PHPの問題 >なぜphpで静的メソッドを使用する必要があるのでしょうか?

なぜphpで静的メソッドを使用する必要があるのでしょうか?

WBOY
WBOYオリジナル
2022-02-25 09:15:252288ブラウズ

PHP では、クラスをインスタンス化せずに直接使用できるため、静的メソッドが使用されます。静的メソッドと静的変数は、作成後に常に同じメモリを使用しますが、インスタンスを使用すると複数のメモリが作成されます。静的メソッドはインスタンス化より効率的です。

なぜphpで静的メソッドを使用する必要があるのでしょうか?

この記事の動作環境: Windows 10 システム、PHP バージョン 7.1、Dell G3 コンピューター。

php で静的メソッドを使用する理由

静的メソッドは、クラスをインスタンス化せずに直接使用できます。

静的メソッドはインスタンス化よりも効率的です。静的メソッドの欠点は、インスタンス化されたメソッドは破棄される可能性があるのに対し、自動的に破棄されないことです。

静的メソッドと静的変数は作成後に常に同じメモリを使用しますが、インスタンスを使用すると複数のメモリが作成されます。

静的メソッド

(1) 静的メソッドは、このクラスの通常のプロパティにはアクセスできません。これらのプロパティはオブジェクトに属しているためですが、静的プロパティにはアクセスできます。

(2) 現在のクラス (サブクラスではない) から静的メソッドまたはプロパティにアクセスするには、$this が現在のオブジェクトを指すのと同じように、self キーワードを使用して現在のクラスを指します。

(3) オブジェクト内で静的メソッドを呼び出すことはできません 静的メソッドおよびプロパティはクラスメソッドおよびクラスプロパティとも呼ばれるため、疑似変数 $this をオブジェクト内で使用することはできません。

静的メソッドの利点:

(1) コード内のどこでも使用可能 (クラスにアクセスできることが前提);

(2) ) クラスの各インスタンスは、クラスで定義された静的プロパティにアクセスできます。静的プロパティを使用して値を設定できます。値はクラスのすべてのオブジェクトで使用できます。

(3) インスタンス オブジェクトは存在しません。静的プロパティまたは静的メソッドにアクセスするために必要です。

推奨学習: 「

PHP ビデオ チュートリアル

以上がなぜphpで静的メソッドを使用する必要があるのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。