30

私が見るすべての例は、コンストラクターを持つクラスを示しています。コンストラクターを入れなくても大丈夫ですか?C#が自動的にデフォルトの空のコンストラクターを作成する方法とよく似ていますか?

4

3 に答える 3

44

仕様から、セクション8.38.3):

クラスには、最大で1つのコンストラクター宣言を含めることができます。クラスにコンストラクター宣言が含まれていない場合は、セクション8.3.3で説明されているように、自動コンストラクターが提供されます。(8.3.3。

于 2013-03-25T17:12:10.917 に答える
13

正しい。TypeScriptのクラスでは、コンストラクターを明示的に記述する必要はありません。ただし、基本クラスを拡張する場合は、少なくともsuper()を呼び出すコンストラクターを作成する必要があります。

于 2013-03-29T15:45:18.943 に答える
9

受け入れられた回答を拡張し、Jon Gearによる回答を修正するためだけに(TSはその間に変更された可能性があります):派生クラスは、を呼び出すことのみを目的としたコンストラクターを作成する必要はありませんsuper()

https://stackblitz.com/edit/no-need-for-duced-constructor?file=index.ts

于 2018-08-21T18:28:13.543 に答える