@ivan0512

Почему в дарте неявное приведение типов так работает?

class Animal {
  String name;
  Animal(this.name);
}

class Cat extends Animal {
  Cat(String name) : super(name);
}

  List<Animal> animals = [];
  List<Cat> cats = animals;


Почему дарт не ловит данную ошибку на этапе компиляции? Даже тайпскрипт с таким справляется.
Знаю, что можно запретить неявные касты в конфиге анализатора, но это же работает просто на уровне IDE, код также продолжает компилировать. А если я вдруг не замечу эти ошибки? Можно ли вынести эту ошибку на уровень компилятора?

Почему было выбрано такое поведение? Когда это может быть нужно? Планируется ли исправлять это в будущем?
  • Вопрос задан
  • 914 просмотров
Пригласить эксперта
Ответы на вопрос 1
@Neonoviiwolf
Flutter developer
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Ctrlweb Ставрополь
от 160 000 до 200 000 ₽
N.Academy Москва
от 100 000 ₽
vivaCRM Москва
от 200 000 до 250 000 ₽
19 апр. 2024, в 03:52
1000 руб./за проект
19 апр. 2024, в 03:01
1000 руб./за проект
18 апр. 2024, в 21:56
2000 руб./за проект