Курсы по программированию

Формула программиста
основатель — Волосатов Евгений Витольдович
Олимпиада по средам
Перейти к решению задачи

Теория ООП / Мощь полиморфизма

  • На этом уроке мы создадим в базовом классе функцию Draw(),
    и при её вызове через механизм полиморфизма будет запускаться созвучный метод нужного класса.
  • Дата отправки отчёта: 3 октября 2015 г.
  • Задание выполнено: за 1 час. 00 мин.
  • Чему научился: Еще немного познакомился с полиморфизмом.
  • Что было сложным: Никаких трудностей нет, потому что ничего не понял)))
  • Комментарии: Ну ладно, оверрайд это непонятно (ну как бы поняяяятно но не освоено, не могу сказать, в каком случае оно будет работать, а в каком - нет) Но вот какой интересный вопрос у меня возник...  Да, допустим, базовый класс шэйп - абстрактный (по другому класс никакой фигуры и не назовешь). И функция дроу в других классах оверрайд и определяет себя по типу фигуры...  Но класс форм то от него [шэйпа] не наследуется. Как же функция дроу в форм1 узнает, что в шейпе дроу абстрактна? Это главный вопрос к уроку, а так все норм. Наверное...
  • Оценка видео-уроку:
Отчёт от 1901 за Теория ООП / Мощь полиморфизма




Оцени работу

 
Сохранить страницу:

24. Олюшка
Олюшка
ответить
→  Neverwinter 2  # Теория ООП / Мощь полиморфизма / 2015-10-03 13:19

Кирилл, шагай по программе через ф11, будет лучше понимание! Уверена что ты поймешь! Продолжай двигаться дальше!:)


1. Евгений Волосатов
Евгений Волосатов
ответить
→  Neverwinter 2  # Теория ООП / Мощь полиморфизма / 2015-10-03 11:16

При чем тут форм? Он смотрит на тип, которым описан массив и делает вывод об обстрактеост методов, которые из этоготипа вызываются.


  • Отчёт оценивали:
    1Евгений Волосатов+1   5291Евгений+1   459Сергей Сергеевич+1   5193Сергей+1   6458Илья+1   3664данила+1   2146Иван+1   24Олюшка+1   6289Екатерина+1   5882Александр Широков+1   1637Алмаз+1   4889Валера Луцевич+1   6391Владимир+1   6452Кирилл Шмойлов+1   1232Фомичева Наталья+1   7226Наталья+1   2912Игорь+1   Посетитель+1   1947Denis+1   5026Екатерина+1  

Начинаем практику по языку C#




Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.
Научился: узнала и познакомилась с абстрактным классом, увидела как он вызывается в потомках, в классах которые наследуют его через override!!!
Трудности: при написании сложностей не возникло, материал очень хорошо и доходчиво подается остается только выполнять и главное запомнить, вот запоминать все новое пока солоновато, нужно прописать и применить не один раз и все very good!!!
все замечательно, медленно и уверенно двигаемся в перед расширяя и добавляя знания при этом уменьшая и улучшая код программы!!!! просто супер!!!))))
Научился: 1) Упрощению программы путем помещения метода Draw в базовый класс при помощи virtual Draw в классе Shape и override и в производных-Line, Box, Circle и простым вызовом из Form. 2) Увидела в цикле как последовательно из одной строки идет обращение к элементам массива фигур Shape. Однако замена в Shape virtual Draw на public abstract Draw не прошла при сохранении override в производных.
Трудности: не получилась замена в public abstract Shape virtual Draw на public abstract Draw при сохранении override в производных классах. Почему? ( см скиншот)
No comments!