Step 4 (S-10670)

From Stepik Wiki
Revision as of 12:38, 7 August 2017 by Admin (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Step on Stepik: https://stepik.org/lesson/553/step/4

Step 4 (S-10670) 1.png

[00:00 - 00:16] отдельно стоит обсуждать что происходит с перегрузкой при наследовании на следующем примере пусть у нас есть некоторый базовый класс fi для работы и в эту базу класса будет объявлен метод который позволяет записать файл произвольной в такую то подчеркнуть точка


[00:16 - 00:31] рассмотрим некоторые производные классы от этого классов например класс форматы файлов для работы с форматированного у этого производного класса формат файла могут быть объявлены свои перегрузки методов recht например этот рай для записи


[00:31 - 00:47] файл целых чисел имя отправителя записи исчезнуть если мы создадим экземпляр класса форматы файлов и пытаемся вызвать 1 из методов который определен непосредственно в производном классе то есть если вам это


[00:47 - 01:05] у нас это не вызовет никаких проблем данном случае мы будем стоять вот так 400 целое число то в данном случае вызвать соответствующую перегрузку однако этим пытаемся вызвать метод который унаследовал из базовых классов но вот некоторые проблемы


[01:05 - 01:21] дело в том что когда мы определяем в производном классе методы с таким же именем какие есть в базовом то эти методы перекрывают методы базовый класс для того чтобы методы базового класса также участвовали в перегрузке


[01:21 - 01:37] нам надо добавить специально то есть мы указываем что внутри производного класса мы хотим использовать методы врать есть базовый класс если мы эту стройку добавим тогда


Step 4 (S-10670) 2.png

[01:37 - 01:52] при вызове метода в районе от строки будет вызван соответствующий метод из базовых классов если же мы эту строчку не добавим том 3 строка просто не скомпилируется


[01:52 - 01:58] потому что методы убрать наследование из базовых вас не будут участвовать перегрузки