Boxing (informatica)In de informatica is boxing een mechanisme om primitieve types te verpakken in objecten. Deze techniek kan alleen aanwezig zijn in programmeertalen waar er onderscheid is tussen primitieve types en objecten. OverzichtDe verschillende datastructuren en taalelementen, zoals lijsten en arrays, bieden verschillende functionaliteit: een lijst kan bijvoorbeeld van grootte veranderen terwijl een array een vaste grootte heeft. Een array kan doorgaans gebruikt worden om primitieve types en objecten in op te slaan terwijl een lijst alleen objecten toestaat, zoals een Soms is het wenselijk om primitieve types, zoals AutoboxingDe term autoboxing wordt gebruikt voor boxing dat automatisch plaatsvindt zonder extra broncode. De compiler genereert automatisch de extra code die nodig is om de typeconversie mogelijk te maken. Het is bijvoorbeeld sinds Java 5.0 mogelijk om een Dit wordt autoboxing genoemd aangezien de conversie automatisch en impliciet gebeurt zonder werk van de programmeur. UnboxingUnboxing is het omgekeerde van boxing: het primitieve type uit een object halen. In Java voor versie 5.0 compileerde het volgende stuk code niet: Integer i = new Integer(9);
Integer j = new Integer(13);
Integer k = i + j; // error!
Sinds Java 5.0 worden int i = 9;
int j = 13;
int k = i + j;
Een ander voorbeeld: int x = 4;
int y = 5;
// Integer qBox = new Integer(x + y);
Integer qBox = x + y; // zou fout zijn maar nu wel toegestaan - equivalent met vorige regel
|