JavaRush/Курсы/Java Multithreading/Вопросы с собеседования 9 уровень

Вопросы с собеседования 9 уровень

Открыта

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

Вопросы к собеседованиям
1 Что такое autoboxing?
2 Зачем используется autoboxing?
3 Альтернативы autoboxing?
4 Типы-обертки для примитивных типов mutable или immutable?
5 Как примитивные типы приводятся к непримитивным аналогам?
6 Как непримитивные типы приводятся к примитивным?
7 Как сравниваются примитивные и непримитивные типы?
8 Всегда ли создается новый объект при операции autoboxing?
9 Как работает кэширование при операции autoboxing?
10 Для каких типов и/или значений работает кэширование?
Комментарии (9)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Денис
Уровень 48
1 апреля, 07:32
Что-то тут давно не было комментариев...
Marat Safiianov
Уровень 38
14 июля 2025, 12:35
Что-то тут давно не было комментариев...
Вадим Шепелин мой канал t.me/jav_junior
24 июля 2024, 22:26
Что-то тут давно не было комментариев...
Дмитрий
Уровень 41
29 июня 2021, 16:41
Вопросы к Собеседованию (Ответы) - Часть 1 1. Что такое autoboxing? Автоупаковка - это автоматическое преобразование, которое компилятор Java выполняет между примитивными типами и соответствующими им классами-обертками объектов. Например, преобразование int в Integer, double в Double и т. д. Если преобразование идет другим путем, это называется автораспаковкой. 2. Зачем используется autoboxing? В Java есть как типы, унаследованные от класса Object, так и примитивные типы. Но, как оказалось, такая удобная вещь как коллекции и generic’и могут работать только с типами, унаследованными от Object. Поэтому разработчики Java придумали автоматическую «упаковку». 3. Альтернативы autoboxing? Cтатические заводские методы valueOf. 4. Типы-обертки для примитивных типов mutable или immutable? Immutable 5. Как примитивные типы приводятся к непримитивным аналогам? Преобразование примитивного значения (например, int) в объект соответствующего класса-обертки (Integer) называется автоупаковка. Компилятор Java применяет автоупаковку, когда примитивное значение: ⠀• Передается в качестве параметра методу, который ожидает объект соответствующего класса-обертки. ⠀• Присваивается переменной соответствующего класса-обертки. Автоупаковка преобразует логический тип boolean в Boolean, byte в Byte, char в Character, float в Float, int в Integer, long в Long, short в Short.
Дмитрий
Уровень 41
29 июня 2021, 16:47
Вопросы к Собеседованию (Ответы) - Часть 2 6. Как непримитивные типы приводятся к примитивным? Преобразование объекта типа обертки (Integer) к соответствующему ему примитиву (int) значение называется автораспаковкой. Компилятор Java применяет автораспаковку, когда объект класса-обертки: ⠀• Передается как параметр в метод, который ожидает значение соответствующего типа ⠀⠀примитива. ⠀• Присваивается переменной соответствующего типа примитива. 7. Как сравниваются примитивные и непримитивные типы? Сравнение примитивных типов:
int x = 500;
int y = 500;
x == y; //true
Сравнение непримитивных типов:
Integer x = 500;
Integer y = 500;
x == y; //false
x.equals(y); //true
8. Всегда ли создается новый объект при операции autoboxing? Когда мы присваиваем переменной типа Integer значение типа int, при этом вызывается метод Integer.valueOf. Функция valueOf не всегда создает новый объект типа Integer. Она кэширует значения от -128 до 127. 9. Как работает кэширование при операции autoboxing? ⠀• Если мы пишем new Integer(), то гарантированно создается новый объект. ⠀• Если мы вызываем Integer.valueOf(), явно или при автоупаковке, то этот метод может ⠀⠀вернуть для нас как новый объект, так и отдать объект из кэша, если переданное число лежит ⠀⠀в диапазоне от -128 до 127. 10. Для каких типов и/или значений работает кэширование? ⠀• Integer, Short, Long: (от -127 до 127) ⠀• Character: (от 0 до 127)
Дмитрий
Уровень 36
28 октября 2019, 12:35
максим
Уровень 40
17 июня 2020, 06:16
ну вот не совсем согласен с ответом на вопрос "зачем нужна автоупаковка" - в ответе говорится о дженериках, и ответ больше подходит для вопроса "зачем нужны классы обертки", а автоупаковка просто для удобства работы
Bahis
Уровень 41
28 декабря 2018, 18:22
тишина...
Dzhin
Уровень 40
27 ноября 2017, 13:29
Ответы: http://info.javarush.ru/DefNeo/2016/09/04/%D0%9E%D1%82%D0%B2%D0%B5%D1%82%D1%8B-%D0%BD%D0%B0-%D0%B2%D0%BE%D0%BF%D1%80%D0%BE%D1%81%D1%8B-%D0%BA-%D1%81%D0%BE%D0%B1%D0%B5%D1%81%D0%B5%D0%B4%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8E-Level29.html