ホームページ >バックエンド開発 >PHPチュートリアル >[FAQ] PHP の常識: Classes_PHP チュートリアル
初心者がボスの書いたプログラムをすぐに理解できるように、PHP クラスに関する常識を整理しました。笑、ボスが追加したり修正したりできると幸いです。彼らの誤解。
Q: PHP のクラスにコンストラクターを含めることはできますか?
A: はい、関数名とクラス名が同じであれば、この関数はコンストラクターになります。 new 演算子を使用してクラスのインスタンスを作成すると、コンストラクターが自動的に呼び出されるため、一部の初期化作業をコンストラクター内で行うことができます。
Q: PHP のクラスにはデストラクターがありますか?
A: いいえ。 unset() を使用するか、単にスコープ外に出ると、オブジェクトが破棄されると、デストラクターが自動的に呼び出されます。しかし、PHP にはデストラクターがありません。 例:
unset($foo);
はクラス オブジェクト $foo を破棄します。
Q: クラスを継承するにはどうすればよいですか?
A: キーワード extends を使用して、次のようにクラスを継承します。
class B extends A {
}
Q: クラスの定義でそれ自体を参照するにはどうすればよいですか?
A: 現在のクラス自体を参照するには、次のように $this を使用します。
$this->name = "Tom";
Q: サブクラスで親クラスを使用するにはどうすればよいですか?
A: :: 演算子を使用します。1 つは、次のように親クラス名を直接使用する方法です。
A::example(); もう 1 つは、次のように親キーワードを使用する方法です。 parent::example ();
親クラスを参照するには、parent:: を使用することをお勧めします。
Q: クラスのインスタンスを作成したくないのですが、クラス内の関数や変数を直接使用できますか?
A: はい、次のような :: 演算子を使用できます:
B::example();
クラス B のオブジェクトを作成せずに、クラス B の関数 example() をクラス関数として実行できます。これは、機能モジュールの帰納的編成に非常に有益です。
Q: PHP には多重継承がありますか? //erquan によって追加されました
A: いいえ。サブクラスは 2 つの親クラスから同時に継承することはできません。つまり、子は同時に 2 つの親クラスを持つことはできません :)。サブクラスは、すでに存在している基本クラスに依存する必要があります。
http://www.bkjia.com/PHPjc/314338.html