มวยแปลงประเภทค่าเป็นประเภทวัตถุ เรามาดูตัวอย่างมวยกัน −
int x = 50; object ob = x; // boxing
ในการชกมวย ค่าที่เก็บไว้ในสแต็กจะถูกคัดลอกไปยังวัตถุที่เก็บไว้ในหน่วยความจำฮีป ในขณะที่การแกะกล่องจะตรงกันข้าม
การชกมวยมีประโยชน์ในการจัดเก็บประเภทค่าในฮีปที่เก็บขยะ เป็นการแปลงประเภทค่าโดยนัยให้เป็นวัตถุประเภท
เรามาดูตัวอย่างกัน −
ตัวอย่าง
using System; using System.Collections.Generic; using System.Linq; public class Demo { static void Main() { int x = 50; object ob = x; x = 100; // The change in x won't affect the value of ob System.Console.WriteLine("Value Type = {0}", x); System.Console.WriteLine("Oject Type = {0}",ob); } }
อย่างไรก็ตาม ใน Unboxing ค่าของอ็อบเจ็กต์ที่เก็บไว้ในหน่วยความจำฮีปจะถูกคัดลอกไปยังประเภทค่าที่จัดเก็บไว้ในสแต็ก มีการแปลงที่ชัดเจนในขณะที่การชกมวยมีการแปลงโดยนัย