Sobes.tech
Junior — Middle

Vysvetlite, čo znamená proces Unboxing v programovaní a na čo slúži.

sobes.tech AI

Odpoveď od AI

Unboxing v programovaní je proces extrakcie hodnoty z obalového objektu (boxed object) späť do jeho pôvodného typu hodnoty. V C# je to relevantné, keď je hodnota typu hodnoty (napríklad, int) zabalená do objektu typu object (boxing), a následne je z tohto objektu extrahovaná (unboxing).

Na čo je to potrebné?

  • Umožňuje pracovať s hodnotovými typmi ako s objektmi, napríklad ich ukladať do kolekcií, ktoré akceptujú objekty.
  • Unboxing vracia pôvodnú hodnotu na ďalšie použitie ako s typom hodnoty.

Príklad:

int x = 123;          // typ hodnoty
object obj = x;       // boxing
int y = (int)obj;     // unboxing

Dôležité je, aby pri unboxingu bol typ explicitne uvedený, a ak sa typ nezhoduje, vznikne výnimka.