Пропуски Junior Dart: классы и миксины обновлено
Dart: const и именованный конструктор
Вопрос
Допишите класс так, чтобы const Point.zero() создавал точку (0, 0), а Point(1, 2) можно было вызвать с const.
class Point {
final int x, y;
__(1)__ Point(this.x, this.y);
const Point.zero() : __(2)__(0, 0);
}
Попробуйте сами
Заполните пропуски по номерам.
1
2
Показать ответ и разбор
Коротко
Для const-конструктора все поля должны быть final, а сам конструктор помечен const. Именованный конструктор перенаправляет на основной через : this(...).
Что в пропусках
1
const
2
this
Разбор
Для const-конструктора все поля должны быть final, а сам конструктор помечен const. Именованный конструктор перенаправляет на основной через : this(...). Перенаправляющий конструктор тоже может быть const, если основной const.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.