ホームページ >php教程 >php手册 >[FAQ]PHP の常識: クラス記事

[FAQ]PHP の常識: クラス記事

WBOY
WBOYオリジナル
2016-06-13 12:45:071151ブラウズ


初心者がボスの書いたプログラムをすぐに理解できるように、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 つの父親を持つことはできません :)。サブクラスは、すでに存在している基本クラスに依存する必要があります。​

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