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

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

Открыта

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

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

 

Комментарии (32)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
GreyBeard
Уровень 38
7 ноября 2024, 19:48
На протяжении всего времени ознакомления с данным курсом, перед моим внутренним взором появлялся суровый старик Оккам с огромной бритвой в руках, восклицающий: "Не плодите лишних сущностей! Порублю суки!"
Viter
Уровень 38
5 марта 2023, 19:15
"Можно ли создавать статические методы/переменные во внутреннем классе?" Можно однако гугл в основном содержит устаревшие данные о том что нельзя..
4 мая 2023, 11:30
Я так понимаю можно для статических внутренних классов. Но для Inner класса точно нельзя... Ты же это имел ввиду??))
6 октября 2022, 18:03
Как бы и при чем тут Map.entry или я что то пропустил?
SomeBoy
Уровень 35
20 февраля 2022, 23:01
Подобный подход круто структурирует полученные знания👍
Саня
Уровень 38
25 июля 2021, 09:58
Такс, вот нагуглил кое-что интересное: 3. Зачем использовать ключевое слово final при создании анонимных классов? Видимо, имеется в виду, что в анонимном классе можно использовать только effectively final переменные его внешнего класса. Такое требование сделано потому что в Java замыкания (closures) не реализованы как в функциональных языках, и на самом деле "захват" внешней переменной не происходит, а вместо этого копируется значение. Если переменная была не изменяемая, то такой подход будет работать в точности как как closure, поэтому и требование на final.
DmitryK #853142832
Уровень 26
15 декабря 2022, 11:47
Это требование относится не к переменным внешнего класса, а к локальным переменным. Т.е. к переменным, объявленным в том же блоке, в котором объявлен локальный класс + входящие агрументы метода, если класс в методе.
Igor Java/Kotlin Developer
15 мая 2021, 07:44
Было бы здорово, если просто вместо списка вопросов были бы тесты.
Евгения
Уровень 27
29 апреля 2021, 11:33
ответы тут
Lo
Уровень 35
Expert
27 ноября 2023, 09:17
Спасибочки!🍒
Арман
Уровень 1
13 марта 2021, 18:33
Anonymous #3091828
Уровень 51
30 октября 2022, 11:01
орнул в голосину
Lo
Уровень 35
Expert
27 ноября 2023, 09:23
ни разу пока не проходила собеседование, но теперь знаю как надо! 😄👍🙀
Игорь Кучер Big Data developer Expert
1 августа 2020, 10:25
Касательно шестого вопроса: во внутреннем нестатическом классе мы можем создать статическое финальное поле:
public static final int x = 45;
и обратиться вне этого класса и даже пакета вот так:
int i = Outer.Innter.x;
Nikola
Уровень 41
27 апреля 2021, 18:03
это константа а не статик (public static final int x = 45;), альтернатива const C++.
Ice Tim
Уровень 30
24 мая 2020, 16:14
О внутренних классах, коротко, с примерами и ясно. http://www.quizful.net/post/inner-classes-java
AlekseiSoftware Engineer в CiscoExpert
9 июля 2020, 15:19
Читаешь на русском: Сначала немного о терминологии. В литературе по 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, 08:21
тут проблемы не перевода, а составления текста. А так да, лучше читать англ документацию.
26 мая 2021, 15:19
Осталось научиться понимать прочитанный английский текст)))
Михаил
Уровень 32
25 октября 2022, 16:06
202+202=404