アングル2では、すべてがインターフェイスを実装するため、多くのクラスを配列として使用できますか?たとえば:配列として多くのクラスを消費する
interface IWorker {
doWork();
}
class WorkerA implements IWorker {
doWork() {...}
}
class WorkerB implements IWorker {
doWork() {...}
}
class MainWorker {
constructor(private workers: IWorker[]) {
}
doWork() {
this.workers.forEach(w => w.doWork());
}
}
を参照してください。プライベートワーカー:WorkerA 'はClass not Interfaceを期待しており、通常は同じ型のクラスを作成し、 'worker'オブジェクトに格納します。 FTRを型キャストするだけではありません。だから答えはいいえ! – codef0rmer
あなたが求めようとしていることについてより正確にお答えください。これは、何かの配列( 'something']ではなく '[something]')の配列の正しい構文ではなく、 'this.'が欠けていますが、インターフェイス型の配列を持つことができます。それを反復し、そのインタフェースを使用してそれらとやり取りします。あなたは動作しないコードを持っていますか([mcve]を提供していますか?)あなたは配列の依存性注入について尋ねていますか? – jonrsharpe
@jonrsharpeがコードを修正しました。私が達成しようとしているのは、すべてのクラスにインターフェイスを実装して単一の配列に挿入することです。私は、労働者階級にすべての種類の労働者を輸入させたくありません。私は、ワーカーを追加して、ワーカーを変更せずにワーカー配列に注入できるようにしたいと考えています。 –