Полиморфизм | виртуальные методы c# | virtual override c# | C# ОТ НОВИЧКА К ПРОФЕССИОНАЛУ | # 75

  Рет қаралды 88,563

#SimpleCode

#SimpleCode

Күн бұрын

Пікірлер: 149
@SimpleCodeIT
@SimpleCodeIT 3 жыл бұрын
Cамый лучший способ сказать "спасибо" - поставить лайк и и поделиться уроком с друзьями. Это очень мотивирует создавать полезные уроки =) ✅Доступ к исходному коду и спонсорство www.patreon.com/SimpleCode ✅ donatepay.ru/don/SimpleCode ✅BTC кошелек: 12oYfJnvt76wjJbpvfhM41m6KPz6uz4LD4
@mkoghazanjyan9508
@mkoghazanjyan9508 3 жыл бұрын
da vse zdelayem Gospodin SERGEY , sposibo za vashi uroki no proshu vas ochen proshu nemnochko po bistreeye kinte vido ostalnoe proshu ochen sposibo
@gupishayvi4341
@gupishayvi4341 3 жыл бұрын
Будут ли отдельные видео по пятерному проектированию ? Порождающие, Структурные, Поведенческие. Паттерны разработки: MVC vs MVP vs MVVM vs MVI? SOLID?
@tominoker2
@tominoker2 3 жыл бұрын
Почему не было такого преподавателя в универе??( Я исписал больше листов, написал больше программок, нежели за все время обучения в универе. Уже 45 листов А4 с двух сторон, 45 страниц настоящего сокровища! Книги это хорошо, но гораздо лучше записывать и все излагать для себя своим языком по этим урокам. Вроде все это проходил, но как то не вникал. А сейчас я каждое слово понимаю, наконец-то, с жадностью информацию поглощаю. Я наконец-то стал понимать суть ООП. Если бы такие преподаватели были в каждом вузе и каждой школе, эх. Спасибо вам огромное!
@kirik06711
@kirik06711 2 жыл бұрын
истину глаголишь. в вузе преподу абсолютно все равно, не объясняет, но требует. как бы классика для вуза, тебе дают 20%, 80% учишь сам, но хочется, чтобы учили, а не просто приходил отсидеть пару..
@HeIvis
@HeIvis 2 жыл бұрын
Капитан Молдова, как ваши успехи?)
@dizmo..
@dizmo.. 3 жыл бұрын
Как всегда, спасибо лучшему учителю по программированию за отличный урок!
@pesk0w
@pesk0w 2 жыл бұрын
Спасибо, из-за "Рон дон дон" я теперь хорошо запомнил как работает virtual и override))))))😀
@DmitryDolganov
@DmitryDolganov 3 жыл бұрын
Сергей, салют! Благодарю!
@adamadamesko9759
@adamadamesko9759 3 жыл бұрын
Этот урок поднял мне настроение, и я даже кое-что понял!
@mikola_belarus
@mikola_belarus 3 жыл бұрын
Хочу выразить благодарность данному сенсею за отличный урок
@bloodmif
@bloodmif 3 жыл бұрын
Спасибо! отличная подача материала и приятный лектор. Очень жаль что пропали домашние задания, они реально помогали - как способ закрепления материала, мотивация практики и как возможность посмотреть на ваше решение поставленной задачки, стиль и чистоту написания. Получал заряд бодрости и эндорфинов, когда моё и ваше решение практически совпадали
@yevheniikovalenko5950
@yevheniikovalenko5950 3 жыл бұрын
Полезное видео, и надеюсь не последнее на тему полиморфизма, тема всё-таки достаточно большая, было бы здорово рассказать про паттерн "Стратегия" ведь это чистейший полиморфизм. Ну и разновидности полиморфизма тоже пригодились бы..
@ShomLZ
@ShomLZ 3 жыл бұрын
Спасибо за очередное видео. За книги из прошлого видео тоже спасибо, очень полезные оказались.
@tutnichego4973
@tutnichego4973 3 жыл бұрын
Как прекрасны понедельники. Спасибо за урок!
@michaeltkachenko7313
@michaeltkachenko7313 3 жыл бұрын
Ура, ну наконец то полиморфизм, долго ждал конечно
@mkoghazanjyan9508
@mkoghazanjyan9508 3 жыл бұрын
gospodin SERGEY proshuu vass ochen pobistree kinte vashi video ochen prosimm ochenn nado vsee sposibo za vsex vash video lessonss thenks
@ДмитрийАлексеев-ж1г
@ДмитрийАлексеев-ж1г 3 жыл бұрын
И снова огромная благодарность за урок, Сергей! Кстати, я скачал книги, посоветованные тобой, и стараюсь изучать.
@flepjack
@flepjack 3 жыл бұрын
Лайк не глядя и комментарий в поддержку)
@saha4005_
@saha4005_ 3 жыл бұрын
Спасибо тебе за то что продолжаешь уроки по с# очень помогаешь в развитии
@saha4005_
@saha4005_ 3 жыл бұрын
))))
@karkar2x
@karkar2x 3 жыл бұрын
Оставлю комментарий для продвижения канала. Очень крутые уроки!! ❤️❤️❤️
@makasin2393
@makasin2393 3 жыл бұрын
Ждал с нетерпением:)
@ВасилийМигулин-т1й
@ВасилийМигулин-т1й 2 жыл бұрын
Какие же шикарные уроки С вами я выучил си шарп и теперь могу делать свою игру С первой прибыли обязательно поделюсь)
@avito34
@avito34 Жыл бұрын
как успехи?
@ВасилийМигулин-т1й
@ВасилийМигулин-т1й Жыл бұрын
@@avito34 в процессе
@ЛюдмилаБоровик-ц8в
@ЛюдмилаБоровик-ц8в Жыл бұрын
Добрый день! Вы ПРЕКРАСНО ведете ВСЕ уроки. Я читаю C# студентам не первій год. И всем рекомендую только Ваши уроки. Кратко. Понятно. Без сленга! Просто идеально! Спасибо.
@cyberwarlus2758
@cyberwarlus2758 3 жыл бұрын
То чуство когда здесь более подробнее чем на зарубежных курсах
@SoundIKS
@SoundIKS 3 жыл бұрын
Спасибо большое за урок!
@MrRelevance
@MrRelevance 3 жыл бұрын
Спасибо за ваши уроки!
@geshoi
@geshoi 2 жыл бұрын
Такие уроки, где легко понять смысл, мне очень нравятся.
@donlinoleum831
@donlinoleum831 3 жыл бұрын
Как всегда все на высшем уровне!
@inspirationchannel6901
@inspirationchannel6901 3 жыл бұрын
Интерестно, что в Java это работает "по умолчанию" (10:47). Сначала изучал просто Java, теперь понадобилось перейти на C#, Ваши уроки сильно помогают, но периодически наталкиваюсь на такие ньюансы. Спасибо за Ваш труд.
@DikiyKomar
@DikiyKomar 2 жыл бұрын
Возможно Ява более высокоуровневый.
@Катерина-э4я
@Катерина-э4я 3 жыл бұрын
Ура! Спасибо)
@Maria-n5g1l
@Maria-n5g1l 3 жыл бұрын
Очередное огромное спасибо за видео!
@ihorrud1962
@ihorrud1962 3 жыл бұрын
Спасибо Сергей!
@vladimir_pl
@vladimir_pl 9 ай бұрын
Было сложно но кое что понял)
@tellur6726
@tellur6726 3 жыл бұрын
Благодаря вашим урокам многие из лабораторных работ по программированию могу делать и понимать хорошо! Спасибо вам огромное за ваш труд!
@shadowbeast3568
@shadowbeast3568 3 жыл бұрын
Очень хорошо объясняется. Надо своим студентам ссылку на ваш канал кинуть - пусть штудируют..
@KirillDoctor2105
@KirillDoctor2105 3 жыл бұрын
я только сегодня прошел эту тему и ты выложил этот ролик!!Благодарю💓
@t00much20
@t00much20 3 жыл бұрын
Большое спасибо за уроки. С такой подачей материала не полюбить программирование просто невозможно.
@windws7137
@windws7137 2 жыл бұрын
Чел, ты лучший. Спасибо за понятную подачу материала! Коммент для продвижения
@triceramops3280
@triceramops3280 2 жыл бұрын
Это просто лучшее объяснение, раньше не особо их юзал так как не понимал преимущества, спасибо сенсей, открыл глаза
@ivankorchmit6893
@ivankorchmit6893 3 жыл бұрын
Очень круто, спасибо! Я бы хотел домашние задания в последующих уроках.
@tutnichego4973
@tutnichego4973 3 жыл бұрын
Согласен, тоже жду ДЗ.
@HATAHKE762
@HATAHKE762 3 жыл бұрын
Ловите ДЗ: В окне приложения первоначально появляются 4 поля ввода, относящиеся к двум категориям: Если пользователь вводит в поле ввода первой категории символ, соответствующий латинской букве, то этот символ в строке появляется дважды. Если пользователь вводит в поле ввода второй категории символ, соответствующий цифре, то в поле ввода кроме этого символа появляется слово, соответствующее этой цифре. Когда строка, содержащаяся в поле ввода, становится длиннее 50 символов, такое поле ввода меняет свое поведение, независимо от категории: при вводе любого символа в строке исчезает первый символ. Различия в поведении полей ввода реализовать с помощью полиморфизма.
@tutnichego4973
@tutnichego4973 3 жыл бұрын
@@HATAHKE762 Задание очень интересное. Будет время - реализую код и отправлю сюда. Ну, а пока мне в голову единственное, что приходит в голову как это сделать - через try catch запарсить строку в int. Не получается - действие со строкой. Удалить первый символ - проще простого, т.к. строку можно перевести в char-массив и там уже удалять.
@tutnichego4973
@tutnichego4973 3 жыл бұрын
@@HATAHKE762 class PrintDate // класс вывода информации. { public void PrintD(PrintString print, string value) // сам метод, который принимает в себя класс PrintString и его наследников { print.Print(value); // вывод информации } } class PrintString // прародитель остальных классов - вывод строки. { public virtual void Print(string value) // метод вывода { for (int i = 0; i < value.Length; i++) // проверка символов внутри строки { if (((value[i] >= 'a') && (value[i] = 'A') && (value[i] = 50) // если длина сообщения равна 50 или больше - применяется метод класса BigDate print.PrintD(new BigDate(), valueDate); else // иначе как... { try // будет попытка перевести строку в число { int.Parse(valueDate); print.PrintD(new PrintInt(), valueDate); // удача - используем метод класса PrintInt } catch (Exception) // в ином случае это будет строка и тогда... { print.PrintD(new PrintString(), valueDate); // используем метод класса PrintString. } } } }
@egorkalmykov4003
@egorkalmykov4003 3 жыл бұрын
Огромное спасибо за полезнейшие уроки !!!
@PS-vj6jz
@PS-vj6jz 3 жыл бұрын
Уроки действительно хорошие
@ПавелБойко-ь2д
@ПавелБойко-ь2д 3 жыл бұрын
Приятно , когда темы получается хорошо понять !) Спасибо за урок !
@viktarvarabei6079
@viktarvarabei6079 3 жыл бұрын
Красавчик, спасибо ❤️
@gedvilgame7937
@gedvilgame7937 Жыл бұрын
дякую автору за хороший матеріал, все зрозуміло і розбито на окремі уроки
@АртурКосяков-и5о
@АртурКосяков-и5о 3 жыл бұрын
Спасибо за знания.
@artlinestudio6735
@artlinestudio6735 3 жыл бұрын
На второй раз понятнее ). Спасибо за отличный урок Сергей!
@chon-coding
@chon-coding 3 жыл бұрын
Благодаря этому человеку я наконец начал понимать ооп) благодарю за уроки )
@HeIvis
@HeIvis 2 жыл бұрын
Привет, прошел год. Есть успехи?
@Kbadpatha9Boda
@Kbadpatha9Boda 2 жыл бұрын
Ты невероятно крутой препод. Канал просто находка для новичков. Пожалуйста не бросай выпускать видосы!
@selfcreator8921
@selfcreator8921 2 жыл бұрын
Объяснения топ, коротко и по сути, спасибо !
@АртёмГуртиков-х9ч
@АртёмГуртиков-х9ч 3 жыл бұрын
Сергей, сделайте, пожалуйста, уроки по Git
@boostedrobloxdevelopment3374
@boostedrobloxdevelopment3374 2 жыл бұрын
Спасибо вам огромное за подобные видео! Очень полезно
@infinitynoir5441
@infinitynoir5441 3 жыл бұрын
Как всегда спасибо)
@3x__
@3x__ 3 жыл бұрын
спасибо за урок!
@keng_makon
@keng_makon 3 жыл бұрын
Спасибо, я ставлю всегда лайк, обесняете классно, но, все же я хочу сказать, мышку на экране быстро скролом двигаете вверх вниз, туда сюда, не надо а то глаза бегает не успевает.
@MrDnbass
@MrDnbass 3 жыл бұрын
Спасибо Сергей!, очень надеюсь на 105 видос.
@lansvans3553
@lansvans3553 2 жыл бұрын
ура я нашла ещё один толковый источник по программированию
@ifelru
@ifelru 3 жыл бұрын
Спасибо за отличные уроки!
@awdesawdeska6161
@awdesawdeska6161 3 жыл бұрын
Коммент для продвижения канала!
@VADIM-SOLOV
@VADIM-SOLOV 3 жыл бұрын
Благодарю за отличный урок!
@vladisslavss
@vladisslavss 3 жыл бұрын
Лукас и коммент в поддержку канала!) Очень крытые видосы. Подойдут для закрепления материала!)
@sergeynovikov7049
@sergeynovikov7049 3 жыл бұрын
Ура!!
@Dimo4ka.Harchenko
@Dimo4ka.Harchenko 3 жыл бұрын
Большое спасибо за видео, было бы круто увидеть выпуск про абстрактные классы
@adeya6396
@adeya6396 3 жыл бұрын
Супер понятно
@artemky3bmu45
@artemky3bmu45 Жыл бұрын
Спасибо!!!
@ivannebyshynets8829
@ivannebyshynets8829 3 жыл бұрын
Спасибо большое!
@nikolayprudov170
@nikolayprudov170 2 жыл бұрын
Great! Thanx so much!
@krs_83
@krs_83 3 жыл бұрын
спасибо
@denmoonchild
@denmoonchild 3 жыл бұрын
блин именно в этот день у меня был собес на автоматизатора тестов на C# и там спрашивали про эту тему а я дурак не повторил и мог бы утром этот видос чекнуть и он бы меня спас, а так по мне я плохо отстрелялся, но будет видно, нет - так нет, буду больше стараться
@ruslanelzhirkaev3538
@ruslanelzhirkaev3538 3 жыл бұрын
Братишка ты лучший!!!
@leskhanmuratuly5374
@leskhanmuratuly5374 2 жыл бұрын
Спасибо)
@hayl7990
@hayl7990 2 жыл бұрын
ты тоооооооооооооооооооооооооооооп!!!!!
@Анечка-е4й9м
@Анечка-е4й9м Жыл бұрын
благодарю
@DikiyKomar
@DikiyKomar 2 жыл бұрын
На данном примере, Можно было не переопределять startengine() в SportCar, там можно использовать метод и без override. Но как для лучшего понимания материала, спасибо!
@blackgolddev4023
@blackgolddev4023 3 жыл бұрын
Шикарно
@sabatonbaton6105
@sabatonbaton6105 3 жыл бұрын
Спасеба :D
@quazar-kek2649
@quazar-kek2649 Жыл бұрын
Сподіваюсь з автором все добре. Дуже корисні відео, мені вони дуже допомогли в розумінні матеріалу. Шаную вашу працю.
@Blackheart9511
@Blackheart9511 3 жыл бұрын
Прекрасные уроки, Сергей. Спасибо огромное за доступные и интересные уроки! Не подумайте, что я пытаюсь вас учить, просто мое пожелание (и думаю, другим бы тоже понравилось): домашние задания. Раньше вы их уже периодически предлагали, но перестали. Возможно, из-за малого количества обратной связи прекратили, может по другим причинам, но мне кажется, что их очень не хватает. Я не предлагаю сильно заморачиваться и делать аж по отдельному ролику для разбора каждой домашки, но было бы славно, если бы вы предлагали подписчикам написать то или это на основе имеющихся у них знаний. Даже хотя бы просто предложить небольшой перечень задачек на условном codewars. Разбирать их в дальнейшем вовсе не обязательно - кто захочет, тот сделает. Ваши уроки очень информативны, но недостаток практики сказывается. Говорю из собственного опыта, потому что недавно решил написать что-то вроде ежедневника для консоли с возможностью сохранения, загрузки и редактирования записей, но изломал себе всю голову в процессе. Необходимые знания сами по себе имеются, но из-за того, что практического применения они не до сего момента не находили, очень трудно понять, что-где-когда делать. В итоге просто теряешься.
@matveydutkovsky6184
@matveydutkovsky6184 3 күн бұрын
Очень удобная вещь, но, как я понял, невозможно переопределить метод дважды? Если создадим еще какой-нибудь класс GreenSportCar и унаследуем его от SportCar, переопределим метод override void Drive(), то при вызове этого метода у базового класса будет выполняться реализация SportCar и игнорироваться новая реализация в GreenSportCar? Было бы очень сподручно найти решение этой проблемы, так как мне для проекта необходимо потенциально бесконечно расширяемое дерево наследования классов, в котором каждый класс сможет переопределить свои методы так, чтобы при вызове их в переменной базового класса вызывалась самая последняя переопределенная реализация у этого экземпляра.
@antonskuratov9637
@antonskuratov9637 3 жыл бұрын
Однозначно лайк!!!
@Roman_SBB
@Roman_SBB 3 жыл бұрын
"Рон дон дон" 👍
@youchinafriend
@youchinafriend 3 жыл бұрын
Привет SimpleCode, не хотел бы запилить курс именно с# для Unity?
@youchinafriend
@youchinafriend 3 жыл бұрын
спасибо.
@pavlom8882
@pavlom8882 2 жыл бұрын
Я б тоже хотел его..
@youchinafriend
@youchinafriend 2 жыл бұрын
@@pavlom8882 уже узнал, но бросил программирование, в общем, язык с# состоит из ключевых слов и конструкций, например классы, методы, поля, например в юнити все эти конструкции так же используются, просто функционал может быть разный. Изучай движок и язык с#, потом ты поймёшь что для чего, удачи. Так же в юнити присутствует свои классы и методы которые стоит изучить.
@GoodOk.
@GoodOk. 3 жыл бұрын
👍
@Влад-щ2э1э
@Влад-щ2э1э 3 жыл бұрын
я чутка не понял по поводу new. допустим в базовом классе есть метод Print public void Print() { Console.WriteLine(name); Console.WriteLine(age); Console.WriteLine(weihgt); Console.WriteLine(height); } если в дочернем классе мы добавим 2 новых поля(CastSpeed и Speed) и напишем public new void Print() { base.Print(); Console.WriteLine(CastSpeed); Console.WriteLine(Speed); } то в консоль выведется 6 параметров. 4 параметра из основного класса(name,age,weight,height) и 2 из наследника(CastSpeed,Speed). а если мы в дочернем классе напишем public new void Print() { Console.WriteLine(CastSpeed); Console.WriteLine(Speed); } то в консоль выведется только 2 параметра из дочернего класса. так в чем же отличие в данном виде переопределения метода с оператором new,от virtual\override? не могу сообразить,хоть убейте))) пример написал из своего кода. писал в VS и так и так,и оба варианта работают.
@ДенисВысоцкий-е2с
@ДенисВысоцкий-е2с Жыл бұрын
Я вопрос твой не могу понять)
@ihorrud1962
@ihorrud1962 3 жыл бұрын
Сергей,как думаете нужно много знать Си шарп что бы создавать игры?Я именно об знаниях, вы когда ни будь занимались Играми?И еще один вопрос Xamarin хуже чем Kotlin,ReactNative,Java?
@dronsan-unity7302
@dronsan-unity7302 3 жыл бұрын
если до сюда дошел - простенькие можешь, много же видосов с созданием игр
@ИванПетров-л5и6е
@ИванПетров-л5и6е 3 жыл бұрын
Сергей, спасибо за работу! Есть небольшая просьба от человека с проблемами по зрению: если Вас не затруднит, не могли бы Вы при записи роликов использовать какую-нибудь светлую контрастную тему для VS?
@siarheitkachou6006
@siarheitkachou6006 3 жыл бұрын
Давай ролик про рефлексию.
@КириллСилин-п4т
@КириллСилин-п4т 3 жыл бұрын
коммент для продвижения
@vitor_corve
@vitor_corve 3 жыл бұрын
I move to fast on the gas, don't chase me!
@МирраДоронина
@МирраДоронина 3 жыл бұрын
Спасибо большое! продвигаю)))
@unknown6535
@unknown6535 3 жыл бұрын
если от класса наследника (в котором мы переопределили виртуальный метод) привестись к базовому классу, то всёравно будет вызван переопределённый метод из класса наследника
@montecristo31
@montecristo31 3 жыл бұрын
Здравствуйте, подскажите пожалуйста. Дело в том что в своих урока по C++ вы используете VS. Но к сожалению версии VS под линукс нету, поэтому я хочу выбрать какой нибудь другой IDE. Так вот у меня в будущем не возникнут из-за этого проблемы?
@vvkbees6473
@vvkbees6473 3 ай бұрын
🤝
@user-ps5zp7de5c
@user-ps5zp7de5c 2 жыл бұрын
Сергей, спасибо за урок. Время 02:46 объясните на каком уроке объясняется запись “person.Drive(new Car());”? Почему тут можно записать “new Car()” вместо “Car car=new Car();” ?
@GGamess
@GGamess 2 жыл бұрын
потому что //new Car()// это тоже самое что //car//
@pavlom8882
@pavlom8882 2 жыл бұрын
Когда ты пишешь: “Car car=new Car();” , ты выделишь для оперативной памяти место, а когда ты напишешь: “new Car()”, ты на временно выделяешь память, и после этого знака }, там больше ничего не будет. Если ошибаюсь, поправьте, пожалуйста.
@GGamess
@GGamess 2 жыл бұрын
@@pavlom8882 после выполнения метода в любом случае стек освободится и ссылка их стека на объект в куче удалится. Затем когда среде удобно, она удалит данные из кучи, когда посчитает нужным. Там не оперативная память, а ссылка в стеке на объект в куче - и эта ссылка будет создаваться и в том и в другом случае, потому что так данные хранятся.
@ДенисВысоцкий-е2с
@ДенисВысоцкий-е2с Жыл бұрын
Такого он не объяснял, да.
@montecristo31
@montecristo31 3 жыл бұрын
Подскажите пожалуйста, для того что бы изучить плюсы, обязательно нужно начинать с СИ?
@S.D.Primus
@S.D.Primus Ай бұрын
😍
@blackberry7191
@blackberry7191 3 жыл бұрын
Здравствуйте Сергей. А сколько примерно ещё будет серий?
@BillGates-ry3dk
@BillGates-ry3dk 3 жыл бұрын
Вся жизнь машина , а ты в нем Рон Дон Дон
@wingofnight870
@wingofnight870 Жыл бұрын
что мешает мне просто переопределить функцию ....а понял. Читаете мысли шеф
@TOP10-o1l6q
@TOP10-o1l6q 3 жыл бұрын
Автор а как с вами можно связаться что бы вы мне с вашим богатым опытом помогли пофиксить одну программу?
@artur8904
@artur8904 3 жыл бұрын
единственный человек который поставил дизлайк, я знаю ты это читаешь! убери его!
@maksimuz3640
@maksimuz3640 3 жыл бұрын
Извините , а что это за проект консольное приложение или что??
@Андрей-у2б8п
@Андрей-у2б8п Жыл бұрын
На 8:55 у меня появляются обе надписи от обычного Car и от SportCar. В чём нюанс?
@AlexandrPister
@AlexandrPister 10 ай бұрын
возможно, ты обращался не к методу, а к конструктору
Twin Telepathy Challenge!
00:23
Stokes Twins
Рет қаралды 128 МЛН
Основы LINQ запросов в C#
26:20
KNL Games
Рет қаралды 96
C# Delegates Делегаты
18:14
codaza
Рет қаралды 90 М.