Динамический тип — это специальный тип данных, потому как он допускает объявление переменной с и без строгой типизации. Если переменная строго типизирована, то семантика, описанная в динамическом типе, накладывает ограничения по всем свойствам, чтобы они были совместимы с заданным типом. Например, на следующем коде видно поведение Dynamic при строгой типизации String:
1 2 3 4 5 6 7 |
var dynamicSample : Dynamic<String> = xml.attributes; // допустимо, так как типизация происходит по типу String dynamicSample.name = "John"; // также допустимо, так как возраст представлен строкой dynamicSample.age = "26"; // недопустимо, dynamicSample строго типизирован по String dynamicSample.income = 0; |