Hỏi đáp

Chia sẻ kiến thức, cùng nhau phát triển

Sự khác biệt giữ Filed và Property

11:31 03-09-2021 1.810 lượt xem 1 bình luận 11:34 03-09-2021

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

Câu hỏi của bạn Thái Sắc

Bình luận

Để bình luận, bạn cần đăng nhập bằng tài khoản Howkteam.

Đăng nhập
Minh Sự Moderator đã bình luận 11:52 03-09-2021

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ụ

public class Food
    {
        private string _name;
        public string Name
        {
            get { return _name; }
            set { _name = value; }
        }
    }

Ở 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ụ

public class Food
    {
        public string Name { get; set; }
    }

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.

Câu hỏi mới nhất