ホームページ >バックエンド開発 >PHPチュートリアル >静的メソッドの呼び出しは新しいオブジェクトと同等ですか?

静的メソッドの呼び出しは新しいオブジェクトと同等ですか?

WBOY
WBOYオリジナル
2016-06-23 13:35:271166ブラウズ

他の人が書いた例を見ると、静的呼び出しを使用することは新しいオブジェクトを作成することと同じであるように見えますが、論理的な観点からは理解できません。これはなぜですか?

に返信してください。ディスカッション (解決策)

getDB は新しいインスタンスを実装し、インスタンスを返すため、query() を使用できます

静的メソッドはメモリ常駐であり、呼び出しは高速ですが、$this はその中で使用できません。新しいインスタンスは後で使用できます $this


DB::getDB() を使用して DB のインスタンスを返します

getDB メソッドの定義を見ると明確にわかります


DB::getDB()

同等のもの

$db = new DB();
$ db->getDB()
メソッドの定義方法によります

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