Объектно-ориентированное программирование (ООП). Язык С++
ООП: ключевые понятия
ООП: ключевые понятия
Три кита ООП
Инкапсуляция
Полиморфизм
Наследование
Описание класса
Синтаксис объявления класса
Способы доступа к компонентам класса
Пример объявления класса
Пример создания объекта класса
Методы-аксессоры
Методы-аксессоры
Вынос тела метода за класс
Описание класса
496.50K
Категория: ПрограммированиеПрограммирование

Объектно-ориентированное программирование (ООП). Язык С++

1. Объектно-ориентированное программирование (ООП). Язык С++

Классы

2. ООП: ключевые понятия

Каждая сущность представляется в коде
программы в виде класса
Класс - общее абстрактное описание
некоторой сущности
Объектно-ориентированное
программирование – подход, при котором
объекты
реального
мира
представляются
в
коде
в
виде
экземпляров классов

3. ООП: ключевые понятия

Программа представляет собой
совокупность взаимодействующих
объектов, имеющих состояние и
поведение

4. Три кита ООП

Инкапсуляция (encapsulation)
Полиморфизм (polymorphism)
Наследование (inheritance)

5. Инкапсуляция

Объединение данных и функций
их обработки
Скрытие информации, ненужной
для использования данных

6. Полиморфизм

в биологии - наличие в пределах одного вида
резко отличных по облику особей
в языках программирования взаимозаменяемость объектов с одинаковым
интерфейсом
«Один интерфейс, множество реализаций».

7. Наследование

Возможность создания иерархии
классов
Наследование потомками свойств
предков
Возможность изменения наследуемых
свойств и добавления новых

8. Описание класса

Класс – это способ описания сущности, определяющий
состояние и поведение, зависящее от этого состояния, а
также правила для взаимодействия с данной сущностью.
С точки зрения программирования, класс является
абстрактным типом данных, определяемым
пользователем, который содержит набор данных (полей,
атрибутов, членов класса) и функций для работы с ними
(методов).

9. Синтаксис объявления класса

class имя_класса
{
[private | protected | public]:
тип_поля1 имя_поля1;
тип_поля2 имя_поля2;
тип_поля3 имя_поля3;
...
тип1 имя_метода1(список_параметров)
{
...
}
тип2 имя_метода2(список_параметров)
{
...
}
...
} [список_переменных];

10. Способы доступа к компонентам класса


Открытый (public)
Защищенный (protected)
Закрытый (private)

11. Пример объявления класса

12.

Объект как экземпляр класса – это
некоторая уникальная единица, имеющая свои
переменные (поля) и функции (методы), эти
переменные обрабатывающие
Поля
объекта
это
переменные,
описывающие его состояние, а методы - это
способ перевести объект из одного состояния
в другое

13. Пример создания объекта класса

14. Методы-аксессоры


Инспекторы позволяют получить
значения полей
Модификаторы позволяют
установить значения полей

15. Методы-аксессоры

Методыаксессоры

16. Вынос тела метода за класс

class Myclass
{
private://ключ доступа
int a;//члены-данные, свойства
float b;//структура в языке С
public:
void setvalue(int, float);//члены-функции,
int geta();//методы,
float getb();
};

17. Описание класса

void Myclass::setvalue(int sa, float sb)
{
a = sa;
b = sb;
}
int Myclass::geta()
{
return a;
}
float Myclass::getb()
{
return b;
}
int main(){
Myclass mc;
cout << mc.geta() << "\n" << mc.getb() << "\n";
mc.setvalue(31, 3.5);
cout << mc.geta() << "\n" << mc.getb() << "\n";
}
English     Русский Правила