天天看點

C# 通路修飾符 public、private、protectrd、internal、protected internal 通路權限

 通路修飾符   權限說明
 private     私有成員,在類的内部才可以通路
 protected   保護成員,該類内部和繼承類中可以通路,執行個體不能通路
 public   公共成員,完全公開,沒有通路限制
 internal    在同一命名空間内可以通路
 protected internal   在同一命名空間内和繼承類可以通路

權限級别  大→小:

public > protected internal > internal > protected > private

C#中 類(class) 的預設通路修飾符

由類的位置決定

如果類(class),結構(struct),枚舉(enum)是外置的,那修飾符隻有:public 和 internal,預設是internal。

至于 private 和 protected 是用來修飾類的成員。

在外置class前面加 private,protected 根本不會通過編譯!

如果是内置的,就是作為另一個類型的成員,也稱内部類型(inner type)。

這樣的話,修飾符可以是全部可用修飾符,預設是private。

例:

class a {}  類a是internal

class b

{

   class a {}  類a是private

}