Добрый день! Выражаю благодарность за ваш труд, очень доходчиво и внятно объясняете материал. Сразу видно, основательно готовитесь к выпуску роликов, вкладывая душу. Будьте счастливы!
во второй части ролика надо было показать как это выглялело бы без анонимных классов, но что то муторно совсем получилось, с имплементированием вроде понятней выглядело бы
как всегда 100+. и возвращаясь к вчерашнему вопросу созданиа силки на 1 интерфеис, все таки можно. и мениа ето очен обрадовало. interface BaseInterface { void f(); } .... ВaseInterface bi = new BaseInterface(){ @Override public void f(){System.out.println("Uraaaa1");} };
bi.f(); Далее вопрос на который может вы ответите. вы в видео говорите что анонимный класс имеет имя class$number System.out.println(btnCopy.getClass()); //аноним класса button (class com.company.Main$1) ??? System.out.println(bi.getClass()); //аноним интерфеиса BaseInterface (class com.company.Main$2) ???
Button b3 = new Button(); System.out.println(b3.getClass());// (class com.company.Button) Примечание: все написано в Main. класс button также находитса в фаиле маин
У класса Button конструктор Button(EventHandler handler) принимает ссылку на EventHandler - интерфейс. Затем, мы создаем кнопку и сразу же передаем в нее интефейс EventHandler с анонимным классом, в котором переопределяем метод exceute(). Именно этот переопределенный метод, затем, будет вызываться из Button (мы это делаем напрямую через ссылку на объект EventHandler
Computer Science - это целое научное направление, так что одной книжкой или вообще только книжками не обойтись. Нужно хорошо знать математику, теорию вероятностей, мат. статистику, и вообще вышку. Далее, хорошо бы познакомиться с классическими алгоритмами обработки сигналов, особенно фильтрации и классификации образов. Вапник здесь лидер (в классических алгоритмах). Далее уже алгоритмы с обучением, нейронные сети. Так что этому люди посвящают всю свою жизнь ))
ну и проктологические конструкции получаются при использовании анонимных внутренних классов и использовании в качестве связки ссылки на интерфейс ((( Красиво, но выглядит как стоматология через, пардон, ж...пу. Тем не менее Автору удается этот подход объяснить )))
Добрый день! Выражаю благодарность за ваш труд, очень доходчиво и внятно объясняете материал. Сразу видно, основательно готовитесь к выпуску роликов, вкладывая душу. Будьте счастливы!
Отличные уроки, просто топчик! Не поверхностно, а очень качественно!
Автору огромный респект за такое доходчивое объяснение столь запутанных и не понятных для новичка вещей.
Большое спасибо, начал понимать анонимные классы
Нравится, что вы рассказывает зачем нам нужно это знать и где использовать!!!
спасибо большое, у вас очень приятный голос, доходчиво объясняете
Спасибо, просто топ объяснение. Всего тебе наилучшего !
Обычно люблю текстовые версии тем. Но тут прям понятнее чем в текстовой версии. Более наглядно. Но тема интересная, отличное видео
во второй части ролика надо было показать как это выглялело бы без анонимных классов, но что то муторно совсем получилось, с имплементированием вроде понятней выглядело бы
Смотрящий юный падаван знай - такие интерфейсы с одним методом называют функциональными интерфейсами, описываются чаще всего лямбда выражениями.
анонимные классы - это далеко не всегда реализация функциональных интерфейсов
Как назавается паттерн проектирования, соответствующий подходу, описанному во второй части ролика?
удалось понять что за паттерн?)
как всегда 100+.
и возвращаясь к вчерашнему вопросу созданиа силки на 1 интерфеис, все таки можно. и мениа ето очен обрадовало.
interface BaseInterface {
void f();
}
....
ВaseInterface bi = new BaseInterface(){
@Override
public void f(){System.out.println("Uraaaa1");}
};
bi.f();
Далее вопрос на который может вы ответите. вы в видео говорите что анонимный класс имеет имя class$number
System.out.println(btnCopy.getClass()); //аноним класса button (class com.company.Main$1) ???
System.out.println(bi.getClass()); //аноним интерфеиса BaseInterface (class com.company.Main$2) ???
Button b3 = new Button();
System.out.println(b3.getClass());// (class com.company.Button)
Примечание: все написано в Main. класс button также находитса в фаиле маин
Добрый день. Подскажите, почему у класса button нет implements Eventhandler?
У класса Button конструктор Button(EventHandler handler) принимает ссылку на EventHandler - интерфейс. Затем, мы создаем кнопку и сразу же передаем в нее интефейс EventHandler с анонимным классом, в котором переопределяем метод exceute(). Именно этот переопределенный метод, затем, будет вызываться из Button (мы это делаем напрямую через ссылку на объект EventHandler
@@selfedu_rus ага, спасибо. Поняла, но повторить самостоятельно пока не смогу) очень гибко)
а если я хочу взять методы от двух интерфейсов?
Посоветуйте пожалуйста какую нибудь книгу по Computer Science или курс лекций на RUclips
Computer Science - это целое научное направление, так что одной книжкой или вообще только книжками не обойтись. Нужно хорошо знать математику, теорию вероятностей, мат. статистику, и вообще вышку. Далее, хорошо бы познакомиться с классическими алгоритмами обработки сигналов, особенно фильтрации и классификации образов. Вапник здесь лидер (в классических алгоритмах). Далее уже алгоритмы с обучением, нейронные сети. Так что этому люди посвящают всю свою жизнь ))
CS50 из Гарварда. Эти лекции есть с русском переводе
я думал на ютубе не существует видео без дизлайков
Вроде все понятно, но во второй половине (с интерфейсами) мозги закипели...Надо еще пару раз посмотреть.
а почему в этот раз без домашних уроков?
Батон, батон, батон... в попытках что-то упростить только усложняют всё
Не работает эта фигня.
ну и проктологические конструкции получаются при использовании анонимных внутренних классов и использовании в качестве связки ссылки на интерфейс ((( Красиво, но выглядит как стоматология через, пардон, ж...пу. Тем не менее Автору удается этот подход объяснить )))