Boxing Và Unboxing - Nguyễn Anh Tuấn
Có thể bạn quan tâm
Boxing là quá trình chuyển đổi một loại giá trị sang kiểu Object hoặc bất kỳ loại Interface nào được thực hiện bởi loại giá trị đó. Object lưu trữ giá trị đó trên một “heap” quản lý. Unboxing ngược lại là việc chuyển đổi từ các giá trị của Object đã lưu thành kiểu giá trị cụ thể.
Hay nói cách khác Boxing là kiểu chuyển đổi ngầm từ Value Types sang Reference Types, vì là kiểu tham chiếu nên nó sẽ lưu giá trị trên một Heap có kiểu tương ứng ban đầu. Unboxing là di chuyển dữ liệu ngược lại từ Reference Type sang Value Types ví dụ dưới đây:
Ví dụ
/*Boxing: Chuyển đổi kiểu Int sang kiểu tham chiếu*/ int a = 2013; object o = a; Console.WriteLine(o); // Output: 2013Và ngược lại
/*Unboxing: Chuyển đổi kiểu tham chiếu Object sang kiểu Int*/ object o = 2013; int a = Convert.ToInt32(o); Console.WriteLine(a); // Output: 2013Nhưng bạn cần lưu ý rằng, unboxing thì kiểu nhận giá trị từ Object phải tương đương kiểu của Oject trước khi Boxing. Điều đó có nghĩa:
/*Boxing và Unboxing: Cách sử dụng đúng*/ int a = 2013; object o = a; // Boxing float j = (float)o; //Unboxing: Lỗi float j2 = (int)o; //Ubboxing: Đúng int j3 =(short)o; //Unboxing: Lỗi int j4 =(int)o; //Unboxing: ĐúngShare this:
- X
Related
Leave a comment Cancel reply
Post navigation
Previous post: Làm việc với Strings trong C# Next post: Tìm hiểu về Convert, Parse – Exact, TryParse – Exact, Casting Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use. To find out more, including how to control cookies, see here: Cookie Policy- Comment
- Reblog
- Subscribe Subscribed
-
Nguyễn Anh Tuấn Sign me up - Already have a WordPress.com account? Log in now.
-
-
-
Nguyễn Anh Tuấn - Subscribe Subscribed
- Sign up
- Log in
- Copy shortlink
- Report this content
- View post in Reader
- Manage subscriptions
- Collapse this bar
-
Từ khóa » Boxing/unboxing Là Gì
-
Hãy Hạn Chế Dùng Boxing Và Unboxing Trong C# - CodeLearn
-
Boxing Và Unboxing Trong C# | For Better Life!
-
Hạn Chế Sử Dụng Boxing/unboxing – C# Best Practices | Tự Học ICT
-
Autoboxing Và Unboxing Trong Java - VietTuts
-
Kiểu Dữ Liệu Object Trong C# | How Kteam
-
Autoboxing Và Unboxing Trong Java - GP Coder (Lập Trình Java)
-
Sự Khác Nhau Giữa Boxing And Un-Boxing? - Phỏng Vấn IT
-
Tại Sao Chúng Ta Cần Boxing Và Unboxing Trong C #? - HelpEx
-
Boxing Và Unboxing Trong C #
-
Quyền Anh Và Unboxing Là Gì Và Sự đánh đổi Là Gì? - HelpEx
-
Boxing/unboxing Và Casting Type In C# – CODER BLOG
-
Boxing Và Unboxing Dữ Liệu - Lập Trình Hướng đối Tượng Với C Docx
-
Boxing And Unboxing - C# Programming Guide - Microsoft Docs