1、不加訪問權限修飾符時的默認訪問權限說明
①、聲明命名空間、類,前面不加限制訪問修飾符時,默認訪問權限為internal——訪問僅限於當前程序集。
②、聲明類成員(包括字段(變量)、屬性和方法)默認為private)以及結構類型,前面不加限制訪問修飾符時,默認訪問權限為private——訪問僅限於當前類。
③、聲明枚舉類型以及接口類型,前面不加限制訪問修飾符時,默認為public且只能為public(就算要把限制訪問修飾符寫出來,也只能寫public,而不能使用其他限制訪問修飾符)——訪問不受限制。
②、聲明類成員(包括字段(變量)、屬性和方法)默認為private)以及結構類型,前面不加限制訪問修飾符時,默認訪問權限為private——訪問僅限於當前類。
③、聲明枚舉類型以及接口類型,前面不加限制訪問修飾符時,默認為public且只能為public(就算要把限制訪問修飾符寫出來,也只能寫public,而不能使用其他限制訪問修飾符)——訪問不受限制。
2、訪問權限修飾符及默認訪問權限
public | 程序集內外都可訪問 枚舉類型成員或接口隱含的訪問權限 |
internal | 程序集內或友元程序集內可訪問 非嵌套類型的默認訪問權限 |
private | 僅在包含類型中可見 類成員或結構體成員的默認訪問權限 |
protected | 僅在包含類型中或子類中可見 |
proctected internal | protected和internal訪問權限的並集(在程序集中或其他程序集的子類中可訪問)。 Eric Lippert這樣解釋:默認情況下盡可能將所有成員定義為私有,然后每一個修飾符都會提高其訪問級別。 |
參考文獻: