Przejdź do treści głównej
INF.04Języki i Składnia Programowania

Pakowanie i rozpakowywanie (Boxing & Unboxing)

Boxing to konwersja typu wartościowego (np. int, struct) na typ referencyjny (object na stercie), a Unboxing to odwrotna konwersja z rzutowaniem.

Różnica między stosem a stertą:

  • Boxing (Pakowanie): Wartość ze stosu jest kopiowana do nowego obiektu zaalokowanego na stercie (int i = 123; object o = i;).
  • Unboxing (Rozpakowywanie): Wartość ze sterty jest kopiowana z powrotem na stos (int j = (int)o;).
  • Wydajność: Częsty boxing w pętlach obciąża pamięć i Garbage Collectora – dlatego wprowadzono kolekcje generyczne (List<int> zamiast ArrayList).

Chcesz sprawdzić to pojęcie w praktyce?

Przeszukaj pytania z oficjalnych arkuszy CKE powiązane z hasłem Pakowanie i rozpakowywanie (Boxing & Unboxing) lub rozpocznij trening.