C#中的封裝被定義為內建的C#程式語言功能,以實現封裝的功能。為了理解封裝功能,它被定義為將一個或多個項目包裝到一個單元中,並確保它們具有邏輯或物理相似性,這就是將它們封裝在一起的理由。它們被打包在一起以確保防止存取實現細節,並且透過這樣做,可以防止對資料的更改。存取詳細資訊的唯一方法是透過類別中的 getter 函數,而修改詳細資訊的唯一方法是透過 setter 函數。將收集的資料成員和成員函數封裝到單一實體中的實體稱為類別。
C# 封裝語法
當 sprintf 成為一種查看儲存可列印訊息而不是在控制台中列印訊息的替代方法時,sprintf 的想法開始流行起來,以便可以根據應用程式的需要隨時引用它們。 sprintf 代表“字串列印”,這裡我們將從 C 語言中的 sprintf 函數的語法角度來看一下,並了解語法中的形參或參數。
1. C# 中要封裝的變數宣告。
private < data type > < variable name >;
2.變數的Getter函數,C#封裝。
get { return < variable name >; }
3.變數的Setter函數,C#封裝。
set { return < variable name >; }
4.將在 C# 中封裝的類別的聲明。
public class < class name >{ // Declare the elements of the public class. }
下面給出了 C# 封裝的範例:
嘗試使用存取器和修改器存取類別中的私有變數(此程式碼中預計會出現錯誤)。
代碼:
using System; namespace EmployeeApplication { class Employee { private string name; private string dept; public string GetName() { return name; } public void SetName(string n) { name = n; } public string GetDept() { return name; } public void SetDepartname(string d) { dept = d; } public void Display() { Console.WriteLine("Name: {0}", name); Console.WriteLine("Department: {0}", dept); } } class ExecuteRectangle { static void Main(string[] args) { Employee e = new Employee(); e.name = "AmKy"; e.dept = "EduCBA"; e.Display(); Console.ReadLine(); } } }
輸出:
使用正確的存取器和修改器類型來存取和修改類別的元素。
代碼:
using System; namespace EmployeeApplication { class Employee { private string name; private string dept; public string GetName() { return name; } public void SetName(string n) { name = n; } public string GetDept() { return name; } public void SetDepartname(string d) { dept = d; } public void Display() { Console.WriteLine("Name: {0}", name); Console.WriteLine("Department: {0}", dept); } } class ExecuteRectangle { static void Main(string[] args) { Employee e = new Employee(); e.SetName("AmKy"); e.SetDepartname("EduCBA"); e.Display(); Console.ReadLine(); } } }
輸出:
使用屬性進行封裝。
代碼:
using System; namespace EmployeeApplication { class Employee { private string name; private string dept; public string DeptProp { get { return dept; } set { dept = value; } } public string EmpName { get { return name; } set { name = value; } } public void Display() { Console.WriteLine("Name: {0}", name); Console.WriteLine("Department: {0}", dept); } } class ExecuteRectangle { static void Main(string[] args) { Employee e = new Employee(); e.EmpName = "Employee 2"; e.DeptProp = "Finance"; e.Display(); Console.ReadLine(); } } }
輸出:
在本文中,我們透過範例了解如何在C# 中完成封裝,其中我們也了解如何從其他類別存取任何私有對象,即使是透過父類別的實例,也可能會導致錯誤並使程式碼無法運行。
以上是封裝C#的詳細內容。更多資訊請關注PHP中文網其他相關文章!