Access Modifiers trong C#
Trong C#, Access Modifiers (các bộ điều chỉnh truy cập) được sử dụng để xác định phạm vi hoặc khả năng tiếp cận của các thành phần của lớp, như thuộc tính, phương thức, lớp con, hoặc bất kỳ thực thể nào khác. Việc sử dụng các Access Modifiers giúp tăng cường tính bảo mật và kiểm soát cách thức các thành phần được truy cập từ bên ngoài lớp hoặc không gian tên.
Các loại Access Modifiers
C# cung cấp 5 loại Access Modifiers chính:
- public: Thành phần có thể được truy cập từ bất kỳ đâu.
- private: Thành phần chỉ có thể được truy cập từ bên trong cùng một lớp.
- protected: Thành phần chỉ có thể được truy cập từ lớp hiện tại và các lớp kế thừa.
- internal: Thành phần chỉ có thể được truy cập trong cùng một assembly (dự án).
- protected internal: Thành phần có thể được truy cập từ các lớp trong cùng một assembly hoặc từ các lớp kế thừa.
Cú pháp của Access Modifiers
Cú pháp để khai báo Access Modifiers rất đơn giản. Bạn chỉ cần thêm từ khóa trình điều chỉnh truy cập trước thuộc tính hoặc phương thức.
Ví dụ về Access Modifiers
1. Ví dụ với public
public class SampleClass { public int publicNumber = 10; public void PublicMethod() { Console.WriteLine("This is a public method."); } }
2. Ví dụ với private
public class SampleClass { private int privateNumber = 5; private void PrivateMethod() { Console.WriteLine("This is a private method."); } public void AccessPrivate() { Console.WriteLine(privateNumber); PrivateMethod(); // có thể gọi được } }
3. Ví dụ với protected
public class BaseClass { protected int protectedNumber = 20; protected void ProtectedMethod() { Console.WriteLine("This is a protected method."); } } public class DerivedClass : BaseClass { public void AccessProtected() { Console.WriteLine(protectedNumber); ProtectedMethod(); // có thể gọi được } }
4. Ví dụ với internal
internal class InternalClass { internal int internalNumber = 30; internal void InternalMethod() { Console.WriteLine("This is an internal method."); } }
5. Ví dụ với protected internal
public class BaseClass { protected internal int protectedInternalNumber = 40; } public class DerivedClass : BaseClass { public void AccessProtectedInternal() { Console.WriteLine(protectedInternalNumber); // có thể gọi được } }
Kết luận
Access Modifiers là một phần quan trọng trong lập trình C#, giúp xác định và kiểm soát cách thức các thành phần của lớp được truy cập. Việc sử dụng chúng một cách hợp lý sẽ giúp bạn cải thiện bảo mật và cấu trúc của mã nguồn. Hy vọng rằng với những thông tin và ví dụ trên, bạn sẽ có cái nhìn rõ hơn về chủ đề Access Modifiers trong C#.