Câu hỏi phỏng vấn Net core
Câu hỏi

BoxingUnboxing trong .Net core là gì?

Câu trả lời

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ị đó.

Ví dụ về Boxing và Unboxing:

csharp Copy
int i = 123; // Kiểu giá trị
object o = i; // Bo...
middle

middle

Gợi ý câu hỏi phỏng vấn

expert

Bạn biết bao nhiêu loại biên dịch JIT?

middle

CLR trong .Net là gì?

junior

Sự khác biệt giữa SDKRuntime trong .NET Core là gì?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào