Идентичность объектов
Идентичность объектов
Понятие ссылки приводит к концепции идентичности объектов. Каждый объект, созданный в процессе выполнения ОО-системы, уникален и идентифицируется независимо от значений его полей. Возможны две ситуации:
[x]. (I1) Два различных объекта могут иметь абсолютно одинаковые поля.
[x]. (I2) Напротив, поля данного объекта могут изменяться в процессе выполнения системы, но это не влияет на идентификацию объекта.
Эти наблюдения свидетельствуют о неоднозначности высказывания "a обозначает тот же объект, что и b". Можно подразумевать различные объекты с одинаковыми данными (I1) или состояния одного и того же объекта до и после изменения значений полей (I2). Мы будем использовать второе толкование и считать, что значения полей заданного объекта могут изменяться в процессе выполнения, а он остается "тем же самым объектом". В случае (I1) будем говорить о равных (но различных) объектах, точное определение понятия равенства будет дано позже.
В соответствии с определением I2 можно сказать, что поля объекта могут изменяться и это не будет ошибкой. Термин "поле" обозначает одно из значений, составляющих объект, а не соответствующий идентификатор поля - имя одного из атрибутов порождающего класса.
Каждому атрибуту класса соответствует поле объекта (1832 для атрибута date класса BOOK3 на рис.8.6 ). Атрибуты неизменны в процессе выполнения, как неизменно и деление объекта на поля, а значения полей меняться могут. Любой экземпляр BOOK3 будет всегда содержать четыре поля, соответствующие атрибутам title, date, page_count, author. Значения этих полей могут меняться у каждого экземпляра.
Изучение того, как сделать объекты сохранямыми (persistent), заставит нас продолжить изучение свойств идентичности объектов. (См. "Идентичность объектов", лекция 13 курса "Основы объектно-ориентированного проектирования")
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Защита объектов ядра и приватных объектов
Защита объектов ядра и приватных объектов Многие объекты, такие как процессы, потоки или мьютексы, являются объектами ядра (kernel objects). Для получения и установки дескрипторов безопасности ядра используются функции GetKernelObjectsSecurity и SetKernelObjectsSecurity, аналогичные функциям защиты
5.4. Диаграммы объектов
5.4. Диаграммы объектов Существенное: объекты и их отношения Диаграмма объектов показывает существующие объекты и их связи в логическом проекте системы. Иначе говоря, диаграмма объектов представляет собой мгновенный снимок потока событий в некоторой конфигурации
Построение объектов
Построение объектов Моделирование с использованием стандартных объектов – основной метод создания моделей. Простые формы являются основой для создания сложных сетчатых оболочек, например сферу можно представить как заготовку для создания яблока, а немного изменив
Выделение объектов
Выделение объектов Только что созданный объект является выделенным. Понять, что объект является выделенным, очень просто: в окнах Тор (Вид сверху), Front (Вид спереди), Left (Вид слева) он всегда имеет контур белого цвета, в окне проекции Perspective (Перспективный вид) выделенный
Копирование объектов
Копирование объектов Представьте, что мы строим кровать, которая стоит на четырех ножках-опорах. Мы построили одну ножку, расположили ее в нужном месте, теперь необходимо построить еще одну. Каждый раз строить новую нерационально, особенно если это не просто ножка, а
Скрытие объектов
Скрытие объектов Чтобы облегчить управление сложными сценами, используют скрытие объектов. Это ускоряет отрисовку объектов в окнах проекций, в результате чего возрастает скорость работы. Скрытые объекты невидимы, и их нельзя выделить.Скрыть объекты можно несколькими
Выравнивание объектов
Выравнивание объектов В процессе работы часто приходится перемещать объекты, выравнивая их положение относительно друг друга. Например, при создании сложной модели, детали которой моделируются отдельно (допустим, люстры с подвесками в классическом стиле), на
Генерации объектов
Генерации объектов Когда среда CLR пытается найти недоступные объекты, это не значит, что будет рассмотрен буквально каждый объект, размещенный в управляемой динамической памяти. Очевидно, что это требовало бы слишком много времени, особенно в реальных (т.е. больших)
Выделение объектов
Выделение объектов Многообразие инструментов быстрого редактирования и трансформации объектов с минимальными усилиями является одним из ключевых средств повышения вашей продуктивности при работе в AutoCAD 2009.В предыдущей главе мы говорили о создании новых объектов.
Копирование объектов
Копирование объектов Команда COPY осуществляет копирование объектов. Она вызывается из падающего меню Modify ? Сору или щелчком на пиктограмме Сору на панели инструментов Modify.Запросы команды COPY:Select objects: – выбрать объектыSelect objects: – нажать клавишу Enter для завершения выбора
Перемещение объектов
Перемещение объектов Команда MOVE осуществляет перемещение объектов. Она вызывается из падающего меню Modify ? Move или щелчком на пиктограмме Move на панели инструментов Modify.Запросы команды MOVE:Select objects: – выбрать объектыSelect objects: – нажать клавишу Enter для завершения выбора
Поворот объектов
Поворот объектов Команда ROTATE осуществляет поворот объектов. Она вызывается из падающего меню Modify ? Rotate или щелчком на пиктограмме Rotate на панели инструментов Modify.Запросы команды ROTATE:Current positive angle in UCS: ANGDIR=counterclockwise ANGBASE=0 – текущие установки отсчета углов в ПСКSelect objects: –
Масштабирование объектов
Масштабирование объектов Команда SCALE осуществляет масштабирование объектов. Она вызывается из падающего меню Modify ? Scale или щелчком на пиктограмме Scale на панели инструментов Modify.Запросы команды SCALE:Select objects: – выбрать объектыSelect objects: – нажать клавишу Enter для завершения
Удлинение объектов
Удлинение объектов Команда EXTEND, которая осуществляет удлинение объектов до граничной кромки, вызывается из падающего меню Modify ? Extend или щелчком на пиктограмме Extend на панели инструментов Modify.Запросы команды EXTEND:Current settings: Projection=UCS Edge=None – текущие установкиSelect boundary edges
Анонимность, эффект растормаживания, коммунальная идентичность и упыри на форумах интернета Сергей Голубицкий
Анонимность, эффект растормаживания, коммунальная идентичность и упыри на форумах интернета Сергей Голубицкий Опубликовано 01 ноября 2013 Алексей Киселёв любезно прислал мне ретвит от Ричарда Доукинза с линком на статью Дрейка Баера,
Глава 12 Подмена сетевых объектов: атаки на доверенную идентичность
Глава 12 Подмена сетевых объектов: атаки на доверенную идентичность В этой главе обсуждаются следующие темы: • Определение спуфинга • Теоретические основы спуфинга • Эволюция доверия • Установление идентичности в компьютерных сетях • Способность сомневаться • Обман