Упражнения
1.
Чем отличаются объектно-ориентированные языки программирования от обычных процедурных
языков?
2.
В чем состоит отличие между конкретными и абстрактными классами?
3. Почему при множественном
наследовании иерархическая структура превращается в гетерархическую?
4. В чем состоит проблема наложения
методов при множественном наследовании?
5.
Что такое метакласс и в чем польза применения такой конструкции?
6. Что понимается под термином
"список предшествования классов"? 7. Рассмотрите схему отношений между
классами на рис. 7.9.
Используя
конструкцию def class языка CLIPS, опишите эту структуру классов таким образом,
чтобы соблюдался следующий порядок наследования в классах, имеющих несколько суперклассов:
wkg-man: (man worker) father: (parent man)
wkg-woman:
(worker woman) mother: (parent woman)
wkg-father: (wkg-man father)
wkg-raother: (mother wrk-woman)
Начните
с класса person:
(defclass
person (is-a USER) (role concrete))
Какой
вид будет иметь список предшествования классов wkg-father и wkg-mother?
Рис.
7.9. Схема структуры классов для упражнения 7
8. Предположим, что классы
на рис. 7.9 имеют следующие предпочтения при выборе блюд на завтрак:
man: donut woman:
croissant parent:
fruit worker: bacon
Закодируйте
данные предпочтения в обработчиках сообщений этих классов таким образом, чтобы
класс-получатель сообщения вернул наименование того блюда, которое он предпочитает.
Сформируйте следующие экземпляры классов:
Joan — экземпляр класса wrk-mother,
Jim — экземпляр класса wrk-man.
Передайте
им сообщение, например, в такой форме:
(send
[Joan] breakfast)
Чем ответят экземпляры Joan и Jim на такое сообщение и почему?
| Maya 3D графика в кино и телевидении Воздействие испытаний ядерного оружия на здоровье населения Объектно-ориентированный язык программирования Java Объектно-ориентированное программирование Delphi Библиотека визуальных компонентов VCL и ее базовые классы Кроссплатформенное программирование для Linux Элементы управления Win32 Элементы управления Windows XP Файлы и устройства ввода/вывода Что такое экспертная система? Объектно-ориентированное программирование Инструментальные средства разработки экспертных систем Программирование на языке CLIPS Критерии и количественные характеристики надежности Расчет характеристик надежности невостанавливаемых резервированных изделий Расчет надежности системы с постоянным резервированием Интегрирование тригонометрических функций ; |