Встречается на собеседованиях • сегодня
Что такое boxing/unboxing
Boxing — это процесс преобразования значимого типа (value type) в ссылочный (object или интерфейс). При этом значение копируется в управляемую кучу (heap). Unboxing — обратное преобразование из ссылочного типа в значимый, с проверкой типа и копированием значения обратно в стек (stack).
**Пример:**
```csharp
int num = 42; // значимый тип (stack)
object boxed = num; // boxing (heap)
int unboxed = (int)boxed; // unboxing (stack)
```
**Нюансы:**
- Boxing создает новый объект в куче, что может влиять на производительность.
- Unboxing требует явного приведения и может вызвать `InvalidCastException`, если типы не совпадают.
- Для частого boxing/unboxing лучше использовать generics (`List` вместо `ArrayList`).

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы