JavaRush /Курсы /Java Multithreading /Подготовка к собеседованию 3 уровень

Подготовка к собеседованию 3 уровень

Java Multithreading
3 уровень , 12 лекция
Открыта

— Привет, Амиго!

  Вопросы к собеседованиям
1 Какие бывают внутренние классы?
2 Во что компилируется анонимный внутренний класс?
3 Зачем использовать ключевое слово final при создании анонимных классов?
4 Как правильно создать объект внутреннего класса?
5 Как правильно создать объект вложенного класса?
6 Можно ли создавать статические методы/переменные во внутреннем классе?
7 Назовите три любых внутренних класса?
8 Как внутренние классы решают проблему множественного наследования в Java?
9 Чем отличаются анонимные классы, созданные на основе интерфейса и на основе класса?
10 Можно ли создать анонимный статический вложенный класс?

 

Комментарии (32)
ЧТОБЫ ПОСМОТРЕТЬ ВСЕ КОММЕНТАРИИ ИЛИ ОСТАВИТЬ КОММЕНТАРИЙ,
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ
GreyBeard Уровень 38
7 ноября 2024
На протяжении всего времени ознакомления с данным курсом, перед моим внутренним взором появлялся суровый старик Оккам с огромной бритвой в руках, восклицающий: "Не плодите лишних сущностей! Порублю суки!"
Viter Уровень 38
5 марта 2023
"Можно ли создавать статические методы/переменные во внутреннем классе?" Можно однако гугл в основном содержит устаревшие данные о том что нельзя..
very junior java developer Уровень 51
4 мая 2023
Я так понимаю можно для статических внутренних классов. Но для Inner класса точно нельзя... Ты же это имел ввиду??))
6 октября 2022
Как бы и при чем тут Map.entry или я что то пропустил?
SomeBoy Уровень 35
20 февраля 2022
Подобный подход круто структурирует полученные знания👍
Саня Уровень 38
25 июля 2021
Такс, вот нагуглил кое-что интересное: 3. Зачем использовать ключевое слово final при создании анонимных классов? Видимо, имеется в виду, что в анонимном классе можно использовать только effectively final переменные его внешнего класса. Такое требование сделано потому что в Java замыкания (closures) не реализованы как в функциональных языках, и на самом деле "захват" внешней переменной не происходит, а вместо этого копируется значение. Если переменная была не изменяемая, то такой подход будет работать в точности как как closure, поэтому и требование на final.
DmitryK #853142832 Уровень 26
15 декабря 2022
Это требование относится не к переменным внешнего класса, а к локальным переменным. Т.е. к переменным, объявленным в том же блоке, в котором объявлен локальный класс + входящие агрументы метода, если класс в методе.
Igor Уровень 41
15 мая 2021
Было бы здорово, если просто вместо списка вопросов были бы тесты.
Евгения Уровень 27
29 апреля 2021
ответы тут
Lo Уровень 35 Expert
27 ноября 2023
Спасибочки!🍒
Арман Уровень 1
13 марта 2021
Anonymous #3091828 Уровень 51
30 октября 2022
орнул в голосину
Lo Уровень 35 Expert
27 ноября 2023
ни разу пока не проходила собеседование, но теперь знаю как надо! 😄👍🙀
Игорь Кучер Уровень 38 Expert
1 августа 2020
Касательно шестого вопроса: во внутреннем нестатическом классе мы можем создать статическое финальное поле:

 public static final int x = 45;
и обратиться вне этого класса и даже пакета вот так:

int i = Outer.Innter.x;
Nikola Уровень 41
27 апреля 2021
это константа а не статик (public static final int x = 45;), альтернатива const C++.
Ice Tim Уровень 30
24 мая 2020
О внутренних классах, коротко, с примерами и ясно. http://www.quizful.net/post/inner-classes-java
Aleksei Уровень 35 Expert
9 июля 2020
Читаешь на русском: Сначала немного о терминологии. В литературе по Java встречаются такие термины, как "внутренние классы" (inner classes) и "вложенные классы" (nested classes). Говорить мы будем о вложенных классах, для которых inner классы являются подмножеством. Тем не менее часто под внутренними классами подразумеваются все вложенные - вот такой вот парадокс. и хочется взорвать себе мозг. Читаешь на английском в документации: Terminology: Nested classes are divided into two categories: static and non-static. Nested classes that are declared static are called static nested classes. Non-static nested classes are called inner classes. и все максимально просто и понятно.
Ice Tim Уровень 30
11 июля 2020
тут проблемы не перевода, а составления текста. А так да, лучше читать англ документацию.
Максим Ананьев Уровень 41
26 мая 2021
Осталось научиться понимать прочитанный английский текст)))
Михаил Уровень 32
25 октября 2022
202+202=404