3:23 Пришлось поломать голову почему код выводит первичные значения. Получается, что сначала выводятся getValues из конструктора, дальше строка "Наш второй метод" из нового метода setValues, но новых установленых значений мы не видим, так как нет команды для их вывода.
так попробуй вывести, тут выводить нечего 5-й параметр boolen который используется в методе. я вообще не понял. пятый параметр вывести можно только через вызов метода setLoader
Полиморфизм(ситуативный) - это когда функция может иметь множество реализаций в зависимости от типа входящих параметров. Полиморфизм(параметрический) - способность функции обрабатывать данные разных типов, при этом должен поддерживаться необходимый интерфейс. Где у автора полиморфизм в коде?
Да как некоторые комментаторы по 2-3 дня над видео сидят? Тут же всё банально просто - хочешь в наследнике использовать метод родителя, но с каким-то новым кодом используй override. Добавишь в метод новый параметр - это уже абсолютно новый метод, overide не надо. Всё. Можно пару примеров поделать, для закрепления. Не нравятся методы set get? Допишите свои, поиграйтесь с кодом. Не надо втупую копировать
Ооооочень сложно воспринимать такую длинную программу которая идет из видео в видео. Чтобы понять принцип работы лучше рассказывать на небольших примерах и небольших программах. К третьему видео с этими кар, транспорт, трак и мэйн уже вообще все в кашу смешалось.
Я думаю, это можно заметить даже по просмотрам. Когда началась это огромная программа с траками и карами, просмотры просели в два раза, потому что это невозможно понять. Это ни в коем случае не осуждение!!! Огромная благодарность за уроки. С первого по 11 урок все просто идеально рассказывается и , что немаловажно, понимается.
Лично у меня с этим не возникло проблем вообще. Даже понравилось, что не нужно каждый раз придумывать новые условия, а все объекты уже знакомые тебе. Ну и да, все видео я пересматривал не единожды. Часто на осознание ролика в 15 минут требовалось пара дней, но я недостаточно много уделял этому времени
Таким образом есть представление о написании любого ПО/Игры Так как раз и нужно уроки писать, на одном пример разбирается ООП (Который и подразумевается на один проект) Просто нужно вести записи всего обучения, чтобы вернуться к моменту остановки
Согласен на все 100%. Даже если учитывать, что я знаю всё об ООП из с++, выходит полная каша, когда он скачет по трем файлам. Нужно показывать новые примеры, а не пытаться одинаковый код растягивать на 4 видео.
@@ОлегРудой-с8ы если ты потратил на понимание элементарных вещей два дня, вместо того, чтобы разобраться на уроке, то это как раз показывает, что видео-урок сделан плохо. При просмотре хорошего урока ты сразу вникаешь в суть, как например несколько уроков ранее этого же автора
Как и многие заметили, код нагроможденный и появилось много не используемых строк, которые постоянно путают. Не то чтобы жалуюсь, как никак уроки бесплатные, однако оч мешает в понимании
В этом уроке ты очень плохо объяснял и очень плохо показывал. С каждым уроком ты всё более и более загромождаешь программу и получается чуть ли не десяток перекрёстных ссылок указывающих друг на друга и разобраться с этим нет никакой возможности. А даже если разберёшься, то непонятно зачем вообще всё это нужно и какой способ выбрать в будущем для себя, а какие способы лучше вообще не выбирать
Согласна, столько строк и везде одно и то же пишем и передаём, все эти параметры и строки по тысячу раз везде указываем, теряется связь где какая ссылка и для чего, если везде одно и то же указываем
@@GorN_Rebel Согласен с тем что это не самый понятный код для обучения, к тому же this. надо было указать сразу и обьяснить т.к. _speed _ weight .. с нижним подчеркиванием это зашквар.
Если честно, начиная с 12 и далее уроков мое понимание их стремительно идет вниз. Объясняешь очень сложно, непонятно, для чего все эти способы, переписывания и тд тупо нужно. Начал подробно пересматривать уроки, гуглить другие видео, чтобы понять, в чем суть. Это все можно было бы показать в коде в 20 строк, который не усложнен миллионом других методов, и так далее. Также явно не помешали бы примеры использования этого. Очень сложно понимать, но за уроки спасибо
Не понимаю зачем это может понадобиться если ты 20 раз вернулся к классу родителю скопировал всё от туда и написал заного. Почему просто не дописать что нужно сразу в класс родитель. Раскидывание одного метода часть тут часть там переписано может ещё где что есть. Зачем эта паутина из связок скакать туда сюда. Какой в этом смысл? Лишнюю строчку написать чтоб код объёмнее казался?
Если ты будешь постоянно использовать какой то вычисление снова и снова . Лучше иметь под рукой готовый код с этим вычислением что бы его сново не писать .
@@КайырТанирберген согласен, мы же не на рулоне туалетной бумаги код пишем. Нужный нам код может находиться буквально в соседней вкладке. Клик и меняй/дополняй как хочешь. Наверно мне нужен другой учитель раз я по объяснениям в этом ролике не понимаю на кой это нужно. 😅
@@kellerzell поверь мне друг, работая после выходных ты откроешь свой код и даже не вспомнишь где ты что писал. Некоторые вещи в программировании делаются для того что бы легче было обслуживать приложение, добавлять что то, убирать. Ты можешь вообще даже не использовать наследование и будет все работать. Но в один прекрасный день тебя попросят изменить какой то метод, а у тебя этих классов 10 штук и тебе нужно будет в 10 файлах вносить изменения. И тогда ты все равно придешь к наследованию или интерфейсам и так далее. Солид посмотри принципы - они как раз из той серии что бы легче обслуживать. Если конечно у тебя не один клас и 5 методов)
Ну что сказать. Это не полиморфизм а обычное переопределение методов в классах наследниках. Автор возьми книжку по Java что ли, прочти про полиморфизм прежде чем учить кого-то.
не могу понять, если ты уже знаешь ООП, то зачем смотришь уроки для начинающих? это не доёб, а просто реально интересно. и тут таких несколько, кто говорит, что это не полиморфизм. Я тоже чую, что что-то тут не так, но я до этого не изучал эту тему
Спасибо, очень информативно!
3:23 Пришлось поломать голову почему код выводит первичные значения. Получается, что сначала выводятся getValues из конструктора, дальше строка "Наш второй метод" из нового метода setValues, но новых установленых значений мы не видим, так как нет команды для их вывода.
спасибо большое! очень помогли в этот момент
Спасибо большое!
так попробуй вывести, тут выводить нечего 5-й параметр boolen который используется в методе. я вообще не понял. пятый параметр вывести можно только через вызов метода setLoader
Спасибо большое вам за такие крутые уроки, начал изучать java чтобы создавать моды для minecraft да и вообще, давно хотел изучить уже... уроки топ!
2:57 он сказал "некоторые классы удалим" но он ведь удалил объект я правильно понял?
Если мы не переопределяем метод то уже это не полиморфизм получается перезагрузка метода получается если не ошибаюсь.
Вы имели в виду перегрузка?
@@ДаниилСысуев-з3ф, или переопределение.
Здравствуйте, спасибо за ваши уроки! По данному уроку возник вопрос, как же все-таки изменить метод setValues через @Override ? Как добавить параметр?
Просто создать такой же метод в наследственном классе
Полиморфизм(ситуативный) - это когда функция может иметь множество реализаций в зависимости от типа входящих параметров.
Полиморфизм(параметрический) - способность функции обрабатывать данные разных типов, при этом должен поддерживаться необходимый интерфейс.
Где у автора полиморфизм в коде?
Да как некоторые комментаторы по 2-3 дня над видео сидят? Тут же всё банально просто - хочешь в наследнике использовать метод родителя, но с каким-то новым кодом используй override. Добавишь в метод новый параметр - это уже абсолютно новый метод, overide не надо. Всё. Можно пару примеров поделать, для закрепления.
Не нравятся методы set get? Допишите свои, поиграйтесь с кодом. Не надо втупую копировать
setValues с 5 параметрами - это перегрузка, а не переопределение. Тут полиморфизма нет
Как быстро всё это
Ооооочень сложно воспринимать такую длинную программу которая идет из видео в видео. Чтобы понять принцип работы лучше рассказывать на небольших примерах и небольших программах. К третьему видео с этими кар, транспорт, трак и мэйн уже вообще все в кашу смешалось.
Я думаю, это можно заметить даже по просмотрам. Когда началась это огромная программа с траками и карами, просмотры просели в два раза, потому что это невозможно понять. Это ни в коем случае не осуждение!!! Огромная благодарность за уроки. С первого по 11 урок все просто идеально рассказывается и , что немаловажно, понимается.
Лично у меня с этим не возникло проблем вообще. Даже понравилось, что не нужно каждый раз придумывать новые условия, а все объекты уже знакомые тебе.
Ну и да, все видео я пересматривал не единожды. Часто на осознание ролика в 15 минут требовалось пара дней, но я недостаточно много уделял этому времени
Таким образом есть представление о написании любого ПО/Игры
Так как раз и нужно уроки писать, на одном пример разбирается ООП (Который и подразумевается на один проект)
Просто нужно вести записи всего обучения, чтобы вернуться к моменту остановки
Согласен на все 100%. Даже если учитывать, что я знаю всё об ООП из с++, выходит полная каша, когда он скачет по трем файлам. Нужно показывать новые примеры, а не пытаться одинаковый код растягивать на 4 видео.
@@ОлегРудой-с8ы если ты потратил на понимание элементарных вещей два дня, вместо того, чтобы разобраться на уроке, то это как раз показывает, что видео-урок сделан плохо. При просмотре хорошего урока ты сразу вникаешь в суть, как например несколько уроков ранее этого же автора
Как и многие заметили, код нагроможденный и появилось много не используемых строк, которые постоянно путают. Не то чтобы жалуюсь, как никак уроки бесплатные, однако оч мешает в понимании
Привет! Можно пожалуйста курс C# под Godot.
В этом уроке ты очень плохо объяснял и очень плохо показывал. С каждым уроком ты всё более и более загромождаешь программу и получается чуть ли не десяток перекрёстных ссылок указывающих друг на друга и разобраться с этим нет никакой возможности. А даже если разберёшься, то непонятно зачем вообще всё это нужно и какой способ выбрать в будущем для себя, а какие способы лучше вообще не выбирать
Согласна, столько строк и везде одно и то же пишем и передаём, все эти параметры и строки по тысячу раз везде указываем, теряется связь где какая ссылка и для чего, если везде одно и то же указываем
Это слишком маленький код чтобы путаться... в работе будет в десятки и сотни раз больше...
@@TheEBPO это слишком большой код для обучения. Прошёл курс у другого человека и начал понимать и больше кода и лучше, чем здесь вообще показано
@@GorN_Rebel Согласен с тем что это не самый понятный код для обучения, к тому же this. надо было указать сразу и обьяснить т.к. _speed _ weight .. с нижним подчеркиванием это зашквар.
@@GorN_Rebel Про какие курсы говоришь?
А каким образом переписанный метод getValues с Override стал виден из класса Main, если модификатор так и остался протектед?
Разобрался. Protected - виден внутри пакета. Странно, я вроде как не помню, что бы автор об этом говорил
Делал небольшое пояснение
@@Даниил-д6м9т
@@Даниил-д6м9т в комментах где то мб увидел, писали
Тот же вопрос, почему когда он вызывал сетвалуес с 4 параметрами то оно работало хотя там протектед,
@@byesedd протектед доступен во всех классах находящихся в одном пакете
Произошёл баг пишет что не может найти Boolean у меня в коде в итоге создал SetValues в транспорте и все
так а зачем нужно переписывать если все ровно будет так как будто мы написали новый метод ?
быстрее, оптимизированнее
Я просто дальше не понимаю о чем он
Если честно, начиная с 12 и далее уроков мое понимание их стремительно идет вниз. Объясняешь очень сложно, непонятно, для чего все эти способы, переписывания и тд тупо нужно. Начал подробно пересматривать уроки, гуглить другие видео, чтобы понять, в чем суть. Это все можно было бы показать в коде в 20 строк, который не усложнен миллионом других методов, и так далее. Также явно не помешали бы примеры использования этого. Очень сложно понимать, но за уроки спасибо
Не понимаю зачем это может понадобиться если ты 20 раз вернулся к классу родителю скопировал всё от туда и написал заного. Почему просто не дописать что нужно сразу в класс родитель. Раскидывание одного метода часть тут часть там переписано может ещё где что есть. Зачем эта паутина из связок скакать туда сюда. Какой в этом смысл? Лишнюю строчку написать чтоб код объёмнее казался?
Намного проще, не прийдётся постоянной проверять весь "транспорт", класс будет работать только с тем который его вызовет
Если ты будешь постоянно использовать какой то вычисление снова и снова . Лучше иметь под рукой готовый код с этим вычислением что бы его сново не писать .
@@КайырТанирберген согласен, мы же не на рулоне туалетной бумаги код пишем. Нужный нам код может находиться буквально в соседней вкладке. Клик и меняй/дополняй как хочешь. Наверно мне нужен другой учитель раз я по объяснениям в этом ролике не понимаю на кой это нужно. 😅
@@kellerzell поверь мне друг, работая после выходных ты откроешь свой код и даже не вспомнишь где ты что писал. Некоторые вещи в программировании делаются для того что бы легче было обслуживать приложение, добавлять что то, убирать. Ты можешь вообще даже не использовать наследование и будет все работать. Но в один прекрасный день тебя попросят изменить какой то метод, а у тебя этих классов 10 штук и тебе нужно будет в 10 файлах вносить изменения. И тогда ты все равно придешь к наследованию или интерфейсам и так далее. Солид посмотри принципы - они как раз из той серии что бы легче обслуживать. Если конечно у тебя не один клас и 5 методов)
Я потерялся
Ну что сказать. Это не полиморфизм а обычное переопределение методов в классах наследниках. Автор возьми книжку по Java что ли, прочти про полиморфизм прежде чем учить кого-то.
я тоже тут полиморфизма не заметил... может он у каждого свой?)
не могу понять, если ты уже знаешь ООП, то зачем смотришь уроки для начинающих? это не доёб, а просто реально интересно.
и тут таких несколько, кто говорит, что это не полиморфизм. Я тоже чую, что что-то тут не так, но я до этого не изучал эту тему
@@b_o_r-d5d Просто попалось видео - решил посмотреть как тема освещена. Вот и все.
@@b_o_r-d5d, это курс лекций по Java. Для меня это новый язык, вот и смотрю.
@@ЮрийКачанов-я5ф так я вообще не тебе писал
херня