Дарт пока не имеет необнуляемых типов.Таким образом, тип, записанный как String
, представляет собой пустую строку.Тип Null
считается подтипом любого типа, и поэтому наименьшая верхняя граница Null
и (обнуляемый) String
равна (обнуляемый) String
.
Когда Дарт становится ненулевымтипы, которые будут меняться.Тогда написанный тип String
будет не обнуляемым, а String?
будет обнуляемым, и тогда наименьшая верхняя граница Null
и String
должна тогда (надеюсь!) Быть String?
.Обнуляемые типы еще не доступны, но они разрабатываются и, как ожидается, будут выпущены ... хорошо, когда они будут готовы.
Если вы пытаетесь установить патч Dart Analyzer, вам нужнознать обо всех системах типов в одном и том же времени, потому что анализатор уже был изменен для распознавания некоторых необнуляемых типов, если вы передаете правильные флаги и надлежащий исходный код.