フィールドとプロパティに独自の属性[Finder]
があり、必要に応じてすべてのフィールドとプロパティを初期化する一種のファクトリがあります。質問: 初期化中のオブジェクトに対して、一種の遅延初期化 (このオブジェクトのいくつかのメソッドを呼び出したときにのみオブジェクトが作成される) を実行したいと考えています。注: プロパティとフィールドは異なるタイプである可能性があります。
2 に答える
1
Lazy<T>
初期化の方法に応じて、新しいタイプを使用できます。もう1つの可能性は、クラスの自動的に作成されたサブクラス(プロキシ)を返すことです。このサブクラスは、メソッド呼び出しごとに初期化の状態をチェックし、必要に応じて初期化を実行します。
于 2011-07-20T09:15:48.930 に答える
1
System.Lazy<T>を利用できる場合があります。それ以外の場合は、自分で初期化されたプロパティ/フィールドを追跡するロジックを実装する必要があります。
于 2011-07-20T09:16:54.547 に答える