Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лк1(Форматированная).doc
Скачиваний:
17
Добавлен:
30.07.2019
Размер:
273.92 Кб
Скачать

Контроль типов и системы типизации

Процесс проверки и накладывания ограничений типов — контроля типов, может выполняться во время компилирования (статическая проверка) или во время выполнения (динамическая проверка).

- Статическая типизация — контроль типов осуществляется при компиляции.

- Динамическая типизация — контроль типов осуществляется во время выполнения.

Контроль типов также может быть строгим и слабым.

- Строгая типизация — совместимость типов автоматически контролируется транслятором:

- Номинативная типизация (англ. nominative type system) — совместимость должна быть явно указана (наследована) при определении типа.

- Структурная типизация (англ. structural type system) — совместимость определяется структурой самого типа (типами элементов, из которых построен составной тип).

- Слабая типизация — совместимость типов никак транслятором не контролируется. В языках со слабой типизацией обычно используется подход под названием «утиная типизация» — когда соместимость определяется и реализуется общим интерфейсом доступа к данным типа.