Книга: Основы объектно-ориентированного программирования
Когда хочется задать тип принудительно
Когда хочется задать тип принудительно
В некоторых случаях нужно выполнить присваивание, не соответствующее структуре наследования, и допустить, что при этом в качестве результата не обязательно будет получен объект. Такого, обычно, не бывает, когда ОО-метод применяется к объектам, внутренним для некоторой программы. Но можно, например, поучить по сети объект с его объявленным типом, и поскольку нет возможности контролировать источник происхождения этого объекта, то объявления статических типов ничего не гарантируют и прежде, чем использовать объект, необходимо проверить его тип.
При получении коробки с надписью "Животное" вместо ожидаемой надписи "Собака", можно соблазниться и все же ее открыть, зная, что, если внутри будет не собака, то потеряется право на возврат посылки и, в зависимости от того, что из нее появится, можно лишиться даже возможности рассказать эту историю. |
В таких случаях требуется новый механизм - попытка присваивания, который позволит писать команду вида r ?= p (где ?= обозначает символ попытки присваивания, в отличие от := для обычного присваивания), означающую "выполнить присваивание, если тип объекта соответствует r, а иначе сделать r пустым". Но мы пока не готовы понять, как такая команда сочетается с ОО-методом, поэтому вернемся к этому вопросу в следующих лекциях. (А до того, считайте, что вы ничего об этом не читали).
- Когда нужен постскриптум в бизнес-тексте?
- Типы данных для работы с датой и временем
- Большие целые типы
- Типы страниц и их использование
- 6.2. Типичные ошибки при проведении программ продвижения и варианты их устранения
- Тип данных BIGINT
- Использование CAST() с типами дата
- Новый тип данных: BOOLEAN
- 1.2.3. Константы, переменные и типы
- 4. Лекция: Типы данных
- Использование типов содержимого и столбцов
- 500 типичных проблем и их решений при работе на ПК