-
Notifications
You must be signed in to change notification settings - Fork 0
Encapsulation (Đóng gói)
VirtueSky edited this page Dec 9, 2024
·
11 revisions
-
Các biến có phạm vi truy cập là
privatechỉ có thể truy cập được trong cùng một lớp (lớp bên ngoài không thể truy cập vào nó). Tuy nhiên, đôi khi chúng ta vẫn cần truy cập chúng và điều này sẽ được thực hiện bằng các thuộc tính. -
Thuộc tính trông giống như sự kết hợp giữa một biến và một phương thức, nó có hai phương thức là
getvàset -
Ví dụ:
class Person
{
private string name; // field
public string Name // property
{
get { return name; } // get method
set { name = value; } // set method
}
}-
Từ ví dụ trên có thể thấy được rằng thuộc tính
Nameđược liên kết với trườngname. Phương thứcgettrả về giá trị biếnnamevàsetsẽ gán value cho biếnname. -
Lúc này ta có thể truy cập biến
namethông qua thuộc tínhNamevì thuộc tính này có phạm vi truy cập làpublic. -
Ví dụ:
class Person
{
private string name; // field
public string Name // property
{
get { return name; }
set { name = value; }
}
}
class Program
{
static void Main(string[] args)
{
Person myObj = new Person();
myObj.Name = "VirtueSky";
Console.WriteLine(myObj.Name);
}
}