本文詳細(xì)分析了C#類的訪問(wèn)修飾符用法,分享給大家供大家參考。具體用法分析如下:
默認(rèn)情況下,類聲明為內(nèi)部的,即只有當(dāng)前工程中的代碼才能訪問(wèn)它。可以用internal訪問(wèn)修飾符關(guān)鍵字顯式指定,但這不是必須的,類在定義時(shí)默認(rèn)為此類型的類。但是C# 方法默認(rèn)訪問(wèn)級(jí)別: private。
方法或者屬性的修飾符的訪問(wèn)級(jí)別如下圖:
| 訪問(wèn)修飾符 | 意 義 |
| public | 訪問(wèn)不受限制,可以類內(nèi)和任何類外的代碼中訪問(wèn) |
| protected | 可訪問(wèn)域限定于類內(nèi)或從該類派生的類內(nèi) |
| internal | 可訪問(wèn)域限定于類所在的程序集內(nèi) |
| protected internal | protected或者internal,即可訪問(wèn)域限定于類所在的程序或那些由它所屬的類派生的類內(nèi) |
| private | 可訪問(wèn)域限定于它所屬的類內(nèi) |
類定義中可以使用的訪問(wèn)修飾符組合
none or internal 類只能在當(dāng)前工程中訪問(wèn)
public 類可以在任何地方訪問(wèn)
abstract or internal abstract 類只能在當(dāng)前工程中訪問(wèn),不能實(shí)例化,只能繼承
public abstract 類可以在任何地方訪問(wèn),不能實(shí)例化,只能繼承
sealed or internal sealed 類只能在當(dāng)前工程中訪問(wèn),不能派生,只能實(shí)例化
public sealed 類可以在任何地方訪問(wèn),不能派生,只能實(shí)例化
下面介紹一下C#中方法、類等的默認(rèn)訪問(wèn)修飾符
接口(interface)
接口成員訪問(wèn)修飾符默認(rèn)為public,且不能顯示使用訪問(wèn)修飾符。
類(class)
構(gòu)造函數(shù)默認(rèn)為public訪問(wèn)修飾符。
析構(gòu)函數(shù)不能顯示使用訪問(wèn)修飾符且默認(rèn)為private訪問(wèn)修飾符。
類的成員默認(rèn)訪問(wèn)修飾符為private;
枚舉(enum)
枚舉類型成員默認(rèn)為public訪問(wèn)修飾符,且不能顯示使用修飾符。
結(jié)構(gòu)(struct)
結(jié)構(gòu)成員默認(rèn)為private修飾符。
結(jié)構(gòu)成員無(wú)法聲明為protected成員,因?yàn)榻Y(jié)構(gòu)不支持繼承。
嵌套類型
嵌套類型的默認(rèn)訪問(wèn)修飾符為private。 和類,結(jié)構(gòu)的成員默認(rèn)訪問(wèn)類型一致
希望本文所述對(duì)大家的C#程序設(shè)計(jì)有所幫助。
新聞熱點(diǎn)
疑難解答
圖片精選