Hỏi đáp
Chia sẻ kiến thức, cùng nhau phát triển
Mọi người cho em hỏi property khác nhau như thế nào so với variable ngoài cách thức khai báo thì khi sự dụng hai thuộc tính này điểm mạnh điểm yếu sẽ như thế nào ạ.
Khi em bỏ get set trong lớp Food thì không hiện thị được. Có dùng foreach để kiểm tra các thành phần trong oder vẫn hiện thị các giá trị truyền vào. Nhưng khi dùng phương thức có sẵn trong thư viện thì không hiện được. Bắt buộc có get set mới hiện thị được
Bạn nên đặt câu hỏi là Sự khác biệt giữa Field và Property như vậy mới đúng, vì Variable là tính năng của ngôn ngữ, Field và Property đều là Variable nhưng chúng có tính chất khác nhau như sau;
1. Field
Đơn giản là chỉ dùng để lưu giá trị và thường được dùng để làm Private Field cho Property của một đối tượng nào đó.
Ví dụ
Ở ví dụ trên Field _name để lưu giá thực của Property Name đó là tính chất đóng gói trong OOP, gọi là Field vì nó không có get set
2. Property
Ví dụ
Ví dụ ở trên là một Property không có get set từ Field cụ thể nào cả, lúc nào C# sẽ tự tạo Private Field riêng cho nó.
Vậy Property là biến có get set còn Field thì không.