Книга: Основы объектно-ориентированного программирования
Проверка типов
Проверка типов
Используя универсализацию, можно гарантировать, что структура данных будет содержать элементы определенного типа. Допустим, класс содержит объявления:
sc: STACK [CIRCLE]; sa: STACK [ACCOUNT]; c: CIRCLE; a: ACCOUNT.
Тогда в программах этого класса допустимы следующие инструкции:
sc.put (c) -- Втолкнуть круг в стек кругов
sa.put (a) -- Втолкнуть счет в стек счетов
c := sc.item -- Сущности круг присвоить вершину стека кругов.
Но каждая из следующих инструкций недопустима и будет отвергнута:
sc.put (a); -- Попытка: Втолкнуть счет в стек кругов.
sa.put (c); -- Попытка: Втолкнуть круг в стек счетов.
c:= sa.item -- Попытка: Дать кругу значение счета.
Это исключает ошибочные операции, подобные попытке вычитания денег из круга.
Похожие страницы
- Типовые сценарии использования PKI
- 7.1. Проверка типов термов
- Функции для определения типов файлов
- Использование типов содержимого и столбцов
- 5. Null-значения и проверка условий
- 5.3 Классификация типов резервного копирования
- 2.7 Преобразования типов
- Описание типов модулей оперативной памяти
- Объекты без прототипов
- 7. Лекция: Преобразование типов
- 12.1. Автоматизированная проверка безопасности
- 12.3. Проверка конфигурации