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

Формула программиста
основатель — Волосатов Евгений Витольдович
Графика + Циклы = Мастерство
Вебинар «Создание прикладных программ на C#» начнётся через 6 час. 40 мин.

Теория ООП / Фигуральный базовый класс

  • Очень хочется все элементы снеговика поместить в один массив.
    Сейчас это сделать нельзя - придётся делать три массива - для кругов, для линий, для боксиков...
    Решение гениальное - создаём базовый класс фигуры - Shape, создаём массив фигур, и все фигуры помещаем в этот массив!
    После размещения фигур в массив можно видеть, что каждая фигура в нём хранится не как фигура, а под своим типом.
    А все под одной крышей они могут находится потому что все они - фигуры, так как унаследованы от Shape.
  • Дата отправки отчёта: 19 мая 2015 г.
  • Задание выполнено: за 40 мин.
  • Чему научился: Потренировался в работе с наследованием.
  • Что было сложным: Ответить на вопрос п.4
  • Комментарии: Единственное, что мне пришло в голову после двадцатиминутного мозгового штурма - это реализация через switch-case.
  • Оценка видео-уроку:
Отчёт от 2939 за Теория ООП / Фигуральный базовый класс




Оцени работу

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

  • Отчёт оценивали:
    2146Иван+1   7303Игорь+1  

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




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

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

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

Ты в любой момент сможешь отписаться от рассылки.
Научился: Сoздaл пустoй бaзoвый клaсc Shape. Сделал наследование всех фигур oт класcа Shape. Пoмeстил всe чacти cнегoвикa в один маcсив. Сoкpатил функцию Draw() для pиcoвaния снeгoвиков. Как peализовaть функцию Draw (Shape shape)? - пока затрудняюсь ответить, буду смотреть следующее видео
+++
Научился: Создавать базовый класс фигур
Трудности: Перегрузка метода Draw(Shape shape). Я не знаю как это реализовать. Подозреваю, что из этого метода нужно вызвать draw, передав ему конкретный тип (Line, ColorBox etc), но как это сделать не понимаю. Не понимаю как из shape получить реальный тип объекта.
Красивая идея использовать общий класс shape для всех фигур. Но реализовать ее я пока не в состоянии