Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Объектно-ориентированное программирование основано на «трех китах» – трех основных принципах, придающих объектам новые свойства. Этими принципами являются:
- инкапсуляция,
- наследование,
- полиморфизм.
Инкапсуляция – есть объединение в одно целое данных и алгоритмов обработки этих данных. В рамках ООП данные называют полями объекта, а алгоритмы – объектными методами.
Инкапсуляция позволяет в максимальной степени изолировать объект от внешнего окружения. Она существенно повышает надежность разрабатываемых программ, поскольку локализованные в объекте алгоритмы обмениваются с программой сравнительно небольшими объемами данных, причем количество этих данных и их тип обычно жестко контролируются. В результате замена или модификация алгоритмов и данных, инкапсулированных в объект, как правило, не влечет за собой серьезных последствий для программы в целом (в целях повышения защищенности программ в ООП почти не используются глобальные переменные).
Другим немаловажным следствием инкапсуляции является легкость обмена объектами, переноса их из одной программы в другую. Фактически ООП «провоцирует» разработку библиотек объектов, таких как Turbo Vision.
Наследование –это свойство объектов порождать своих потомков. Объект-потомок автоматически наследует от родителя все поля и методы, может дополнять объекты новыми полями и заменять (перекрывать) методы родителя или дополнять их.
Принцип наследования решает проблему модификацию свойств объекта и придает ООП в целом исключительную гибкость. При работе с объектами программист обычно подбирает объект, наиболее близкий по своим свойствам для решения конкретной задачи, и создает от него одного или нескольких потомков, которые «умеют» делать то, что не реализовано в родителе.
Последовательное проведение в жизнь принципа «наследуй и изменяй» хорошо согласуется с поэтапным подходом к разработке крупных программных проектов и во многом стимулирует такой подход.
Полиморфизм –это свойство родственных объектов (т.е. объектов, имеющих одного общего родителя) решать схожие по смыслу проблемы разными способами. В ООП поведенческие свойства объекта определяются набором входящих в него методов. Изменяя алгоритм того или иного метода в потомках объекта, программист может придавать этим потомкам отсутствующие у родителя специфические свойства. Для изменения метода необходимо перекрыть его в потомке, т.е. объявит в потомке одноименный метод, и реализовать в нем нужные действия. В результате в объекте-родителе и объекте-потомке будут действовать два одноименных метода, имеющие разную алгоритмическую основу и, следовательно, придающие объектам разные свойства. Это и называется полиморфизмом объектов.
В Турбо Паскаль полиморфизм достигается не только описанным выше механизмом наследования и перекрытия методов родителя, но и их виртуализацией, позволяющей родительским методам обращаться к методам потомков.
Дата публикования: 2015-06-12; Прочитано: 243 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!