この記事の例では、PHP での静的プロパティと静的メソッドの呼び出しについて説明します。皆さんの参考に共有してください。詳細は以下の通りです
これは、PHP オブジェクト指向における静的属性と静的メソッドの呼び出しの分析です。呼び出し(呼び出せるかどうか、どのように呼び出すか)については、メモリのどこに保存されているかを理解する必要があるため、非常に理解しやすいです。静的プロパティとメソッド (静的および非静的を含む) は、メモリ内に 1 つの場所しかありません (静的プロパティではなく、インスタンス化されたオブジェクトと同じ数のプロパティがあります)。
例:
結論:
(1). 静的プロパティはインスタンス化せずに呼び出すことができます。静的属性はクラスに格納されるため、呼び出しメソッドは「クラス名::属性名」になります。
(2) 静的メソッドはインスタンス化せずに呼び出すことができます。同上
(3) 静的メソッドは非静的プロパティを呼び出すことができません。非静的属性はインスタンス化してオブジェクトに保存する必要があるためです。
(4) 静的メソッドは、self キーワードを使用して非静的メソッドを呼び出すことができます。 PHP では、メソッドが self:: と呼ばれた後、自動的に静的メソッドに変換されます。