Typing
Интерактивное демо «Typing» — раздел Энциклопедия · Основы.
Статическая и динамическая типизация
Когда система узнаёт о несовместимости типов.
int balance = 100; balance = "текст"; // ошибка компиляции
Проверка на этапе компиляции: Компилятор: incompatible types: String cannot be converted to int
Преобразование типов
Расширяющее обычно неявное; сужающее требует явного cast и осторожности.
int→doubleбезопасно
int a = 5; double b = a; // 5.0
Python — динамический и сильный: "5" + 2 даёт TypeError. JavaScript — динамический и слабый: "5" + 2 → "52".