Понятие концепции наследования. Видимость компонентов

Содержание

Слайд 2

План лекции:
1. Введение
2. Базовые и производные классы
3. Открытое, защищенное и закрытое

План лекции: 1. Введение 2. Базовые и производные классы 3. Открытое, защищенное
наследование

Цель изучения темы:
Сформировать знания учащихся о базовой концепции ООП – наследования, механизме наследования классов на конкретном примере и видимости компонентов в зависимости от степени их защиты.

Слайд 3

Базовый класс – это класс, на основе которого создаются другие классы.

Производный класс

Базовый класс – это класс, на основе которого создаются другие классы. Производный
– это класс, который наследует базовый класс.

писать новые поля данных и методы

новый класс

существующий класс

наследует элементы

Слайд 4

Производный класс служит представлением более специализированной группы объектов.

Животные

Дикие животные

Домашние животные

Производный класс служит представлением более специализированной группы объектов. Животные Дикие животные Домашние

Кошки

Собаки

Лошади

Непосредственный базовый класс является классом, который явно наследуется производным классом.

Косвенный базовый класс расположен на два или более уровней выше в иерархии наследования.

Слайд 5

В С++ различают отношение

«является»

«имеет»

представляет концепцию наследования

представляет композицию

Средство передвижения

Автомобиль

является

коробка передач;
рулевое колесо;
педаль тормоза

В С++ различают отношение «является» «имеет» представляет концепцию наследования представляет композицию Средство
и др.

имеет

Слайд 6

class A
{
public:
int a;
void f()
};

class B
{

};

class A
{
private:

class A { public: int a; void f() }; class B {
int a;
void f()
};

class B
{

};

Производный класс может обращаться к элементам базового класса.

Элементы базового класса не доступны элемент-функциям производного.

Слайд 7

Университет

Выпускники

Студенты

Сотрудники

Вспомогательный персонал

Профессорско-преподавательский состав

Преподаватели

Администрация

Администратор-Преподаватель

Иерархия наследования для членов университетского сообщества

class Employee : public University

Университет Выпускники Студенты Сотрудники Вспомогательный персонал Профессорско-преподавательский состав Преподаватели Администрация Администратор-Преподаватель Иерархия

Слайд 10

#include
using namespace std;
class Human
{
public:
string name;
int age;
int force;
void eat()
{

#include using namespace std; class Human { public: string name; int age;
force+=20;
cout<void sleep()
{ force+=15;}
void information()
{cout<< "My name is "< cout<<"I am " <};

Слайд 11

class Builder : public Human
{
public:
void build()
{
force-=10; }
};
class Grandmother :

class Builder : public Human { public: void build() { force-=10; }
public Human
{
public:
void cook()
{
cout<< "Hot cakes!"<};