Объектно- ориентированное программирование

Содержание

Слайд 2

Объектно -ориентированное программирование — парадигма программирования, в которой основными концепциями являются понятия классов и объектов.

Объектно -ориентированное 
программирование  — парадигма
программирования, в которой
основными концепциями являются
понятия классов и объектов.

Слайд 3

Класс — разновидность абстрактного типа данных в объектно-ориентированном программировании характеризуемый способом

Класс — разновидность абстрактного типа данных в объектно-ориентированном программировании характеризуемый способом своего

построения.
Объект — это экземпляр класса.
Слайд 4

Свойства ООП Инкапсуляция – это свойство системы, позволяющее объединить данные и

Свойства ООП

Инкапсуляция – это свойство системы, позволяющее объединить данные и методы,

работающие с ними, в классе и скрыть детали реализации от пользователя.
Слайд 5

Наследование – это свойство системы, позволяющее описать новый класс на основе

Наследование – это свойство системы, позволяющее описать новый класс на основе

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

Фигура

Треугольник

Квадрат

Ромб

Эллипс

Точка

Круг

Слайд 6

Полиморфизм – возможность объектов с одинаковой спецификацией иметь различную реализацию.

Полиморфизм – возможность объектов с одинаковой спецификацией иметь различную реализацию.

Слайд 7

Описание класса class Printer { private: char model[15]; //модель принтера int

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

class Printer
{
private:
char model[15]; //модель принтера
int year; //год выпуска
int status; //состояние принтера
public:
void init_printer(char* _model, int _year);
void

set_print();//метод переводит принтер в состояние печати
void stop_print();// метод останавливает печать
void show();//метод отображает состояние принтера на экране
};
Класс содержит три переменные и три функции-члена.
Слайд 8

public (открытый член класса) — обращения к члену допускаются из любого

public (открытый член класса) — обращения к члену допускаются из любого кода.
protected (защищённый,

внутренний член иерархии классов) — обращения к члену допускаются из методов того класса, в котором этот член определён, а также из любых методов его классов-наследников. 
private (закрытый, внутренний член класса) — обращения к члену допускаются только из методов того класса, в котором этот член определён.
Слайд 9

Методы предназначены для обработки внутренних данных объекта данного класса. Методы, определенные

Методы  предназначены для обработки внутренних данных объекта данного класса.
Методы, определенные внутри класса, являются

неявно встроенными. Пример.
class A     {     int x, y;     int sum ( ) { return (x + y) ; }     } ; 

Методы

Слайд 10

Для определения метода вне класса необходимо указать имя класса, за ним

Для определения метода вне класса необходимо указать имя класса, за ним знак ::(оператор разрешения области

действия, он указывает, что данная функция-член является частью определенного класса.) и имя функции-члена.
Пример.
Class B     {     int x, y;    int sum ( )     } ; int B::sum ( ) { return (x + y) ;
Слайд 11

Конструкторы и деструкторы Особой разновидностью методов являются конструкторы, которые предназначены для

Конструкторы и деструкторы

Особой разновидностью методов являются конструкторы, которые предназначены для инициализации

объектов.
class date {
date(int, int, int);
};
Когда класс имеет конструктор, все объекты этого класса будут инициализироваться. Если для конструктора нужны параметры, они должны даваться:
date today = date(23,6,1983);