Difference between revisions of "Step 4 (S-10675)"
(Create page for step id=10675) |
|||
Line 1: | Line 1: | ||
Step on Stepik: https://stepik.org/lesson/554/step/4 | Step on Stepik: https://stepik.org/lesson/554/step/4 | ||
− | + | [[File:Step_4_(S-10675)_1.png|border|800px]] | |
[00:00 - 00:15] особый вид виртуальных методов это чисто виртуальный метод или абстрактными то это виртуальный метод у которых отсутствует реализация давайте посмотрим как они могут использоваться пусть о базовых классов прошлом объявлен некоторой виртуальный метод | [00:00 - 00:15] особый вид виртуальных методов это чисто виртуальный метод или абстрактными то это виртуальный метод у которых отсутствует реализация давайте посмотрим как они могут использоваться пусть о базовых классов прошлом объявлен некоторой виртуальный метод | ||
Line 9: | Line 9: | ||
− | + | [[File:Step_4_(S-10675)_2.png|border|800px]] | |
[00:30 - 00:47] абстрактно в том смысле что нельзя создать экземпляр этого класса почему не предположим можно было бы создателем 1 класса например можно было бы определить переменную типа пишет тогда в этой переменной можно было бы вызвать | [00:30 - 00:47] абстрактно в том смысле что нельзя создать экземпляр этого класса почему не предположим можно было бы создателем 1 класса например можно было бы определить переменную типа пишет тогда в этой переменной можно было бы вызвать | ||
Line 17: | Line 17: | ||
− | + | [[File:Step_4_(S-10675)_3.png|border|800px]] | |
− | + | [[File:Step_4_(S-10675)_4.png|border|800px]] | |
[01:04 - 01:20] несмотря на то что сам класс является абстрактным и его интересовать нельзя можно наследоваться данного класса и определить абстрактный метода уже в классах наследниках например можно создать 2 производные классы стьюдент и профессор | [01:04 - 01:20] несмотря на то что сам класс является абстрактным и его интересовать нельзя можно наследоваться данного класса и определить абстрактный метода уже в классах наследниках например можно создать 2 производные классы стьюдент и профессор | ||
− | + | [[File:Step_4_(S-10675)_5.png|border|800px]] | |
[01:20 - 01:37] и в каждом из этих классов определить метод руки повешен своим собственным образом ну например стьюдент будем возвращать в качестве рода деятельности студент а в профессора естественно профессор таким образом раз получил 2 различные реализации этого метода | [01:20 - 01:37] и в каждом из этих классов определить метод руки повешен своим собственным образом ну например стьюдент будем возвращать в качестве рода деятельности студент а в профессора естественно профессор таким образом раз получил 2 различные реализации этого метода | ||
− | + | [[File:Step_4_(S-10675)_6.png|border|800px]] | |
− | + | [[File:Step_4_(S-10675)_7.png|border|800px]] | |
[01:37 - 01:52] несмотря на то что создавать за пиар класса то что нельзя можно создавать указатель и ссылке назначения типа просто это делается для того чтобы можно было работать с объектами производных классов | [01:37 - 01:52] несмотря на то что создавать за пиар класса то что нельзя можно создавать указатель и ссылке назначения типа просто это делается для того чтобы можно было работать с объектами производных классов | ||
Line 45: | Line 45: | ||
− | + | [[File:Step_4_(S-10675)_8.png|border|800px]] | |
− | + | [[File:Step_4_(S-10675)_9.png|border|800px]] | |
[02:39 - 02:55] класса который так же унаследовал от государства и также переопределяет метод occupation дали мы можем вызвать метод таки высшим и за счет того что данный метод является виртуальным будет вызван | [02:39 - 02:55] класса который так же унаследовал от государства и также переопределяет метод occupation дали мы можем вызвать метод таки высшим и за счет того что данный метод является виртуальным будет вызван | ||
Line 55: | Line 55: | ||
− | + | [[File:Step_4_(S-10675)_10.png|border|800px]] | |
[[Category:Steps]] | [[Category:Steps]] | ||
[[Category:Виртуальные методы (L-554)| 4]] | [[Category:Виртуальные методы (L-554)| 4]] |
Latest revision as of 12:39, 7 August 2017
Step on Stepik: https://stepik.org/lesson/554/step/4
[00:00 - 00:15] особый вид виртуальных методов это чисто виртуальный метод или абстрактными то это виртуальный метод у которых отсутствует реализация давайте посмотрим как они могут использоваться пусть о базовых классов прошлом объявлен некоторой виртуальный метод
[00:15 - 00:30] слышал что в переводе означает род деятельности у которого отсутствует реализацию показать что это соответствует реализации использует специально обозначения равно 0 так как у данного класса объявлен метод без реализации абстрактными то сам класс становится абстрактным
[00:30 - 00:47] абстрактно в том смысле что нельзя создать экземпляр этого класса почему не предположим можно было бы создателем 1 класса например можно было бы определить переменную типа пишет тогда в этой переменной можно было бы вызвать
[00:47 - 01:04] метод пышет а у данного метода отсутствуют реализации то есть вызов прям покажет поэтому компилятор запрещается создавать экземпляры класса у которого есть абстрактный метод приведет к ошибке компиляции
[01:04 - 01:20] несмотря на то что сам класс является абстрактным и его интересовать нельзя можно наследоваться данного класса и определить абстрактный метода уже в классах наследниках например можно создать 2 производные классы стьюдент и профессор
[01:20 - 01:37] и в каждом из этих классов определить метод руки повешен своим собственным образом ну например стьюдент будем возвращать в качестве рода деятельности студент а в профессора естественно профессор таким образом раз получил 2 различные реализации этого метода
[01:37 - 01:52] несмотря на то что создавать за пиар класса то что нельзя можно создавать указатель и ссылке назначения типа просто это делается для того чтобы можно было работать с объектами производных классов
[01:52 - 02:08] при помощи 1 и того же года предположим у нас есть большой список людей состоящих например студентов и профессора тогда можно написать код в терминах указателя на базовый класс который обрабатывает
[02:08 - 02:23] различные классы ну нам случае студентов и профессор единым образом посмотрим как то можно было бы сделать пусть у нас есть некоторые функции спрошен которого отражает следующей человек в этом списке я эта функция будет возвращать указатель
[02:23 - 02:39] на теперь мы знаем что экземпляров типа прошлом это значит что указатели ссылается на объект либо либо типа профессор либо какого то другого
[02:39 - 02:55] класса который так же унаследовал от государства и также переопределяет метод occupation дали мы можем вызвать метод таки высшим и за счет того что данный метод является виртуальным будет вызван
[02:55 - 03:06] соответственно метод то есть соответствующий реализации этого метода из конкретного класса основываясь на типе того значение на которую указывает указатель