Введение - Обьекто-ориентированное программирование
Объектно-ориентированное программирование (ООП) позволяет разложить проблему на составные части, каждая из которых становится самостоятельным объектом. Каждый из объектов содержит свой собственный код и данные, которые относятся к этому объекту.
Любая программа, написанная на языке ООП, отражает в своих данных состояние физических предметов либо абстрактных понятий - объектов программирования, для работы, с которыми она предназначена.
Все данные об объекте программирования и его связях с другими объектами можно объединить в одну структурированную переменную. В первом приближении ее можно назвать объектом.
С объектом связывается набор действий, иначе называемых методами. С точки зрения языка программирования набор действий или методов - это функции, получающие в качестве обязательного параметра указатель на объект и выполняющие определенные действия с данными объекта программирования. Технология ООП запрещает работать с объектом иначе, чем через методы, таким образом, внутренняя структура объекта скрыта от внешнего пользователя. Описание множества однотипных объектов называется классом.
Объект - это структурированная переменная, содержащая всю информацию о некотором физическом предмете или реализуемом в программе понятии.
Класс - это описание множества объектов программирования (объектов) и выполняемых над ними действий.
Класс можно сравнить с чертежом, согласно которому создаются объекты. Обычно классы разрабатывают таким образом, чтобы их объекты соответствовали объектам предметной области решаемой задачи.
Основными понятиями ООП являются:
Инкапсуляция данных (от "капсула") - это механизм, который объединяет данные и код, манипулирующий с этими данными, а также защищает и то, и другое от внешнего вмешательства или неправильного использования. В ООП код и данные могут быть объединены вместе (в так называемый "черный ящик") при создании объекта. Внутри объекта коды и данные могут быть закрытыми или открытыми. Закрытые коды или данные доступны только для других частей того же самого объекта и, соответственно, недоступны для тех частей программы, которые существуют вне объекта. Открытые коды и данные, напротив, доступны для всех частей программы, в том числе и для других частей того же самого объекта.
Наследование. Новый, или производный класс может быть определен на основе уже имеющегося, или базового класса. При этом новый класс сохраняет все свойства старого: данные объекта базового класса включаются в данные объекта производного, а методы базового класса могут быть вызваны для объекта производного класса, причем они будут выполняться над данными включенного в него объекта базового класса. Иначе говоря, новый класс наследует как данные старого класса, так и методы их обработки. Если объект наследует свои свойства от одного родителя, то говорят об одиночном наследовании. Если объект наследует данные и методы от нескольких базовых классов, то говорят о множественном наследовании.
Полиморфизм - это свойство, которое позволяет один и тот же идентификатор (одно и то же имя) использовать для решения двух и более схожих, но технически разных задач. Целью полиморфизма, применительно к ООП, является использование одного имени для задания действий, общих для ряда классов объектов. Такой полиморфизм основывается на возможности включения в данные объекта также и информации о методах их обработки (в виде указателей на функции). Будучи доступным в некоторой точке программы, объект, даже при отсутствии полной информации о его типе, всегда может корректно вызвать свойственные ему методы.
Похожие статьи
-
В нашей курсовой работе была поставлена задача создания обучающей программы по информатике, с помощью которой студенты смогут проверить свои знания в...
-
Цель Работы - изучить приемы создания и использования шаблонов классов. - Теоретические сведения Достаточно часто встречаются классы, объекты которых...
-
Введение, Правила и порядок выполнения курсовой работы - Программирование в среде Turbo Pascal
Настоящие методические указания предназначены для выполнения курсовой работы "Расчеты на ЭВМ характеристик выходных сигналов электрических цепей" по...
-
Введение, РЕКУРСИЯ - Рекурсивное программирование
Основой для разработки рекурсивных алгоритмов служат, так называемые, Рекуррентные соотношения (формулы), устанавливающие зависимость между результатами...
-
Введение - Основные свойства функциональных языков программирования
Созданная в 1998 году спецификация языка Haskell (названного так в честь ученого Хаскелла Карри, одного из основоположников функционального...
-
Введение - Технология разработки программного обеспечения систем управления
С++ является языком объектно-ориентированного программирования (ООП). Объект - абстрактная сущность, наделенная характеристиками объектов реального мира....
-
Среда объектно-ориентированного программирования Delphi Delphi - это комбинация нескольких важнейших технологий, высокопроизводительный компилятор в...
-
Объектно - ориентированное программирование - Модульное и объектно-ориентированное программирование
Объектно-ориентированное программирование является в настоящее время наиболее популярной технологией программирования. Объектно-ориентированными языками...
-
Введение - Линейное программирование
Линейное программирование - это наука о методах исследования и отыскания наибольших и наименьших значений линейной функции, на неизвестные которой...
-
Введение - Объектно-ориентированное, визуальное программирование в Delphi на уроках
Урок информатика программирование объект Значительно более мощные системы Windows, OS/2 и другие привели к повсеместному вытеснению старой "доброй" DOS...
-
Введение - Электронный учебник по предмету "Основы алгоритмизации и программирования"
В настоящее время, в условиях активного проникновения информационных технологий в систему образования и накопления образовательных ресурсов в сети...
-
Введение - Высокоуровневые методы информатики и программирования
База данных информационный База данных является важнейшей составной частью информационных систем, которые предназначены для хранения и обработки...
-
Введение - Объектно-ориентированный подход и диаграммы классов в UML
Психологи уже давно показали, что средний человек может одновременно воспринимать адекватно в пределах десятка единиц информации. Таким образом, при...
-
История функционального программирования - Основные свойства функциональных языков программирования
Широко известно, что теоретические основы императивного программирования были заложены еще в 30-х годах XX века учеными Аланом Тьюрингом и Джоном фон...
-
Введение - Разработка программного средства, позволяющего оптимизировать SQL-скрипты
Актуальность. В настоящее время трудно найти фирму, которая не использовала бы базы данных в той или иной форме - учет сотрудников, клиентов, продаж....
-
Кроме поддержки интерпретатора порождающих правил, описанного в главе 5, CLIPS обладает следующими функциональными возможностями: - для определения...
-
Объекты управления и их свойства - Visual Basic. Основы программирования
Объектом называется некая сущность, которая, во-первых, четко проявляет свое поведение, а во-вторых, является представителем некоторого класса подобных...
-
Технология программирования Для реализации поставленной задачи наиболее удобной парадигмой программирования будет являться объектно-ориентированная...
-
ВВЕДЕНИЕ - Анализ средств защиты информации в ЛВС
Вопрос защиты информации поднимается уже с тех пор, как только люди научились письменной грамоте. Всегда существовала информация, которую не должны знать...
-
Принципы SOLID - Программирование на языке C++
SOLID - мнемонический акроним, введенный Майклом Фэзерсом ( Michael Feathers ) для первых пяти принципов, названных Робертом Мартином в начале 2000-х,...
-
Введение, Проект документирования cистемы Linux - Операционная система Linux
В этой книге рассматриваются аспекты системного администрирования операционной системы Linux. В первую очередь данное руководство предназначено для тех,...
-
Введение - Разработка интернет-магазина компьютерной техники
Сайт (веб-сайт англ. website, от web -- паутина, "веб" и site -- "место") - это место во всемирной сети (интернете), которое имеет свой адрес,...
-
Постановка задачи, Подход к реализации - Обьекто-ориентированное программирование
Создать класс Triangle для представления треугольника. Поля класса - длины сторон. Требуется реализовать операции: вычисления углов треугольника,...
-
Тестирование, Заключение - Обьекто-ориентированное программирование
Ввод данных осуществляется пользователем. У пользователя запрашивается будем ли сравнивать треугольники и при положительном ответе вводятся параметры...
-
Реализация - Обьекто-ориентированное программирование
Для реализации задачи воспользуемся языком программирования Java и средой разработки NetBeans. Создадим два класса: Triangle и Test. В классе Triangle...
-
ВВЕДЕНИЕ - Модульное и объектно-ориентированное программирование
В настоящее время большинство рабочих мест являются компьютеризированными. Поэтому умение пользоваться компьютером становится одним из необходимых...
-
Введение - Пользовательский контент
Мы живем в информационную эру -- эпоху, когда информация и знания представляют высшую ценность в обществе, а также, которая отличается практически...
-
Языки и методы параллельного программирования - Администрирование параллельных процессов
Применение параллельных архитектур повышает производительность при решении задач, явно сводимых к обработке векторов. Автоматическое распараллеливание...
-
Из универсальных языков программирования сегодня наиболее популярны следующие: Бейсик (Basic), Паскаль (Pascal), Си++ (C++), Ява (Java). Для каждого из...
-
При создании программ и формировании структур баз данных нередко применяются формальные способы их представления - формальные нотации, с помощью которых...
-
ВВЕДЕНИЕ, КЛАССИФИКАЦИЯ КОМПЬЮТЕРНЫХ СЕТЕЙ - Компьютерные сети и телекоммуникации
За последние годы глобальная сеть Интернет превратилась в явление мирового масштаба. Сеть, которая до недавнего времени использовалась ограниченным...
-
Цель Работы - изучить основные способы работы с пользовательским типом данных "класс", его объектами, методами и способы доступа к ним. - Теоретические...
-
Проект приложения, Структура проекта, Запуск проекта - Visual Basic. Основы программирования
Программный проект - это совокупность частей, составляющих будущее Windows-приложен. Любой проект должен состоять из одной или нескольких Экранных форм и...
-
ВВЕДЕНИЕ - Архивация информации и программы-архиваторы
При работе с данными существует возможность порчи или потери информации на магнитном диске, обусловленная физической порчей диска, случайным уничтожением...
-
ЗАДАНИЕ, КРАТКИЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ - Основы программирования в операционной системе Unix
Цель работы : изучение и использование языка программирования С++ для работы с ресурсами операционной системы Unix. Написать программу на языке С++ в...
-
Введение - Разработка корпоративной сети на основе технологий xDSL
Корпоративный сеть интерфейс Любая организация - это совокупность взаимодействующих структурных элементов (подразделений), каждый из которых может иметь...
-
Введение - Программа построения равновесных стратегий для игры
Игра стратегия математический С появлением компьютеров широкое развитие получила тема искусственного интеллекта. Одним из направлений искусственного...
-
Завершив выбор схемы работы системы и общего принципа работы ее частей и выбрав тип базы данных, следует перейти к выбору языка программирования....
-
Разработка интерфейса, Разработка запросов - Высокоуровневые методы информатики и программирования
Программа, будет начинать работу с вывода главной формы, на которой будет располагаться самое главное меню, т. е. другими словами "панель навигации"....
-
Введение, Роль и значение информационных революций. - Проблемы компьютеризации общества
Трудно назвать другую сферу человеческой деятельности, которая развивалась бы столь стремительно и порождала бы такое разнообразие проблем и мнений, как...
Введение - Обьекто-ориентированное программирование