C#類(lèi)的訪問(wèn)修飾符用法分析
本文詳細(xì)分析了C#類(lèi)的訪問(wèn)修飾符用法,分享給大家供大家參考。具體用法分析如下:
默認(rèn)情況下,類(lèi)聲明為內(nèi)部的,即只有當(dāng)前工程中的代碼才能訪問(wèn)它??梢杂胕nternal訪問(wèn)修飾符關(guān)鍵字顯式指定,但這不是必須的,類(lèi)在定義時(shí)默認(rèn)為此類(lèi)型的類(lèi)。但是C# 方法默認(rèn)訪問(wèn)級(jí)別: private。
方法或者屬性的修飾符的訪問(wèn)級(jí)別如下圖:
訪問(wèn)修飾符 |
意 義 |
public |
訪問(wèn)不受限制,可以類(lèi)內(nèi)和任何類(lèi)外的代碼中訪問(wèn) |
protected |
可訪問(wèn)域限定于類(lèi)內(nèi)或從該類(lèi)派生的類(lèi)內(nèi) |
internal |
可訪問(wèn)域限定于類(lèi)所在的程序集內(nèi) |
protected internal |
protected或者internal,即可訪問(wèn)域限定于類(lèi)所在的程序或那些由它所屬的類(lèi)派生的類(lèi)內(nèi) |
private |
可訪問(wèn)域限定于它所屬的類(lèi)內(nèi) |
類(lèi)定義中可以使用的訪問(wèn)修飾符組合
none or internal 類(lèi)只能在當(dāng)前工程中訪問(wèn)
public 類(lèi)可以在任何地方訪問(wèn)
abstract or internal abstract 類(lèi)只能在當(dāng)前工程中訪問(wèn),不能實(shí)例化,只能繼承
public abstract 類(lèi)可以在任何地方訪問(wèn),不能實(shí)例化,只能繼承
sealed or internal sealed 類(lèi)只能在當(dāng)前工程中訪問(wèn),不能派生,只能實(shí)例化
public sealed 類(lèi)可以在任何地方訪問(wèn),不能派生,只能實(shí)例化
下面介紹一下C#中方法、類(lèi)等的默認(rèn)訪問(wèn)修飾符
接口(interface)
接口成員訪問(wèn)修飾符默認(rèn)為public,且不能顯示使用訪問(wèn)修飾符。
類(lèi)(class)
構(gòu)造函數(shù)默認(rèn)為public訪問(wèn)修飾符。
析構(gòu)函數(shù)不能顯示使用訪問(wèn)修飾符且默認(rèn)為private訪問(wèn)修飾符。
類(lèi)的成員默認(rèn)訪問(wèn)修飾符為private;
枚舉(enum)
枚舉類(lèi)型成員默認(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)不支持繼承。
嵌套類(lèi)型
嵌套類(lèi)型的默認(rèn)訪問(wèn)修飾符為private。 和類(lèi),結(jié)構(gòu)的成員默認(rèn)訪問(wèn)類(lèi)型一致
希望本文所述對(duì)大家的C#程序設(shè)計(jì)有所幫助。
- C#類(lèi)中方法的執(zhí)行順序是什么
- C#類(lèi)繼承中構(gòu)造函數(shù)的執(zhí)行序列示例詳解
- C#類(lèi)的多態(tài)性詳解
- C#類(lèi)中static變量用法分析
- c#類(lèi)的使用示例
- C#類(lèi)中的屬性使用總結(jié)(詳解類(lèi)的屬性)
- C#類(lèi)中屬性與成員變量的使用小結(jié)
- c#對(duì)象初始化順序?qū)嵗治?/a>
- C#對(duì)象為Null模式(Null Object Pattern)實(shí)例教程
- c#對(duì)象反序列化與對(duì)象序列化示例詳解
- C#對(duì)象與XMl文件之間的相互轉(zhuǎn)換
- 自定義實(shí)現(xiàn)Json字符串向C#對(duì)象轉(zhuǎn)變的方法
- 關(guān)于C# 類(lèi)和對(duì)象詳情
相關(guān)文章
C#實(shí)現(xiàn)Check Password和鎖定輸錯(cuò)密碼鎖定賬戶(hù)功能
C#實(shí)現(xiàn)的Check Password,并根據(jù)輸錯(cuò)密碼的次數(shù)分情況鎖定賬戶(hù):如果輸入錯(cuò)誤3次,登錄賬戶(hù)鎖定5分鐘并提示X點(diǎn)X分后重試登錄,具體實(shí)現(xiàn)代碼感興趣的朋友跟隨小編一起看看吧2020-01-01C#?使用PrintDocument類(lèi)打印標(biāo)簽的方法
本文介紹打印機(jī)初步配置,以及實(shí)現(xiàn)方法,標(biāo)簽主要展示資產(chǎn)基本信息以及二維碼,對(duì)C#?使用PrintDocument類(lèi)打印標(biāo)簽的詳細(xì)過(guò)程感興趣的朋友一起看看吧2022-04-04C#如何安全、高效地玩轉(zhuǎn)任何種類(lèi)的內(nèi)存之Span的本質(zhì)
為什么要使用指針,什么時(shí)候需要使用它,以及如何安全、高效地使用它?本文將講清楚 What、How 和 Why ,讓你知其然,更知其所以然2021-08-08詳解.NET 4.0中的泛型協(xié)變(covariant)和反變(contravariant)
這篇文章主要介紹了詳解.NET 4.0中的泛型協(xié)變(covariant)和反變(contravariant),本文講解了協(xié)變和反變的背景知識(shí)、.NET 4.0引入的泛型協(xié)變、反變性、協(xié)變和反變的相互作用等內(nèi)容,需要的朋友可以參考下2015-06-06C#獲取應(yīng)用程序路徑或Web頁(yè)面目錄路徑
這篇文章介紹了C#獲取應(yīng)用程序路徑或Web頁(yè)面目錄路徑的方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-05-05C#獲得MAC地址(網(wǎng)卡序列號(hào))的實(shí)現(xiàn)代碼
這篇文章主要介紹了C#獲得MAC地址的實(shí)現(xiàn)代碼,需要的朋友可以參考下2014-02-02C#中l(wèi)abel內(nèi)容顯示不全、不完整的解決方法
這篇文章主要介紹了C#中l(wèi)abel內(nèi)容顯示不全、不完整的解決方法,只需要把兩個(gè)屬性設(shè)置一下即可解決這個(gè)問(wèn)題,需要的朋友可以參考下2015-06-06