Boxing và Unboxing trong .Net core là gì?
Boxing và Unboxing trong .Net core là gì?
Trong .NET, boxing là quá trình chuyển đổi một kiểu giá trị (value type) thành một kiểu tham chiếu (reference type), cụ thể là chuyển đổi thành kiểu object
hoặc bất kỳ kiểu interface nào mà kiểu giá trị đó thực hiện. Khi CLR (Common Language Runtime) thực hiện boxing, nó đóng gói giá trị bên trong một instance của System.Object
và lưu trữ nó trên managed heap.
Unboxing là quá trình ngược lại, chuyển đổi một kiểu tham chiếu đã được boxing trở lại thành kiểu giá trị ban đầu của nó. Unboxing là một phép chuyển đổi tường minh và yêu cầu phải có type casting. Để unboxing thành công tại thời điểm chạy, đối tượng cần phải là một tham chiếu đến một đối tượng đã được tạo ra thông qua quá trình boxing từ một instance của kiểu giá trị đó.
int i = 123; // Kiểu giá trị
object o = i; // Bo...
middle
Gợi ý câu hỏi phỏng vấn
Chưa có bình luận nào