В чем разница между var a = new className () {id = "", Name = ""} и var a = new className {id = "", Name = ""}} - PullRequest
0 голосов
/ 08 июля 2019

В чем разница при создании объекта с данными

className a = new className {id = "foo" , Name = "sass"}

и

className a = new className() {id="foo",Name="sass"}

Ответы [ 4 ]

3 голосов
/ 08 июля 2019

Вызов new className вместо new className() не будет иметь значения. Они оба вызывают конструктор по умолчанию. Разница расстояний тоже не имеет значения.

Оба сегмента кода переписываются компилятором во что-то, эквивалентное:

className a = new className();
a.id = "foo";
a.Name = "sass";
1 голос
/ 08 июля 2019
1 голос
/ 08 июля 2019

Нет разницы вообще. Однако вам потребуется скобка, если вы вызовете другой конструктор, например, когда не определен конструктор без параметров:

className a = new className(myParameter) {id="foo",Name="sass"};

, что невозможно в первом синтаксисе.

0 голосов
/ 08 июля 2019

Ничего.Если у вас есть конструктор без параметров, он все равно вызывается. MS Docs

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...