ホームページ  >  記事  >  バックエンド開発  >  [FAQ] PHP の常識: Classes_PHP チュートリアル

[FAQ] PHP の常識: Classes_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-21 16:10:07938ブラウズ


初心者がボスの書いたプログラムをすぐに理解できるように、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

tru​​ehttp://www.bkjia.com/PHPjc/314338.html技術記事初心者がボスの書いたプログラムをすぐに理解できるように、PHP クラスの常識を整理して、ボスの書いたプログラムをすぐに理解できるようにしました (笑)。比較的少ないですが、ボスがもっと追加できることを願っています。 .
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。