1

データベースクラスがあり、そのクラスのインスタンスを他のクラスのコンストラクターに渡す場合でも、1つの接続のみを使用するのでしょうか、それとも、渡すコンストラクターと同じ数の接続を作成するのでしょうか。

4

1 に答える 1

2

一般的に、関数に渡されるオブジェクト、または変数に割り当てられるオブジェクト(を使用せずにclone)は、参照カウントを増やしますが、別のインスタンスを作成しません。

オブジェクトが複製されると、すべてのプロパティが新しいオブジェクトにコピーされます。スカラープロパティは複製され、他のプロパティ(オブジェクト、リソース)では代わりに参照数が増加します。

結論

データベースクラスの単一のインスタンスを作成し、データベース接続がコンストラクター内で一度作成され、プロパティ内に格納されていると仮定すると、それを渡すことで複数の接続が開かれることはありません。

于 2012-11-19T07:36:48.450 に答える