ホームページ > バックエンド開発 > PHPチュートリアル > 次の別の書き方の目的は何ですか?

次の別の書き方の目的は何ですか?

WBOY
リリース: 2016-06-23 13:46:12
オリジナル
1002 人が閲覧しました

次の文章の質問 1: コンストラクターは実際には空ですが、さらに珍しいのは、コンストラクターが空の場合、以下でインスタンス化する方法です。
理由は何ですか?

シングルトン パターンは、一般的に使用されるソフトウェア設計パターンです。そのコア構造には、シングルトン クラスと呼ばれる特別なクラスが 1 つだけ含まれています。シングルトン モードでは、システム内にクラスのインスタンスが 1 つだけ存在し、外部からそのインスタンスに簡単にアクセスできるようにすることができるため、インスタンス数の制御が容易になり、システム リソースが節約されます。特定のクラスのオブジェクトを 1 つだけシステム内に存在させたい場合は、シングルトン パターンが最適なソリューションです。

http://baike.baidu.com/view/1859857.htm

コンストラクターが空かどうかはインスタンス化とは関係ありません

コンストラクターが空の場合は、実行中にユーザー定義のアクションが存在しないことを意味します。インスタンス化。そして、親クラスのコンストラクター (存在する場合) は実行されません


プライベート関数 __construct(){}
は、クラスを外部からインスタンス化できず、プライベート メソッドはそれが定義されているクラス内でのみアクセスできることを意味します
クラス外 new Tpl
無効なコンテキストからプライベート Tpl::__construct() を呼び出すという致命的なエラーが発生します

シングルトンモードの書き方ですが、
プライベート関数 __clone(){} がありません
オブジェクトシングルトンモードのクローンを作成すると、シングルトンの本来の意図に違反します

クラスにとって、すべてのプロパティとメソッドが静的であるため、シングルトンであることは無意味です
静的プロパティはインスタンス間で共有されるため

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート