日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

C#语言中的修饰符

發布時間:2023/11/27 生活经验 45 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C#语言中的修饰符 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

public:公有訪問。不受任何限制。

private:私有訪問。只限于本類成員訪問,子類和實例都不能訪問。

protected:保護訪問。只限于本類和子類訪問,實例不能訪問。

internal:內部訪問。只限于本項目(程序集)內訪問,其他不能訪問。

protected internal :內部保護訪問。只限于本項目或是本類和子類訪問,其他不

?????????????????? 能訪問

1、類(class)
??? 默認的修飾符:private?? ?
??? 可以被修飾的:public,private,internal,protected,protected internal

2、枚舉(enum)
??? 默認的修飾符:private
??? 可以被修飾的:public,private,internal

3、結構(struct)
??? 默認的修飾符:public

4、接口(interface)
??? 默認的修飾符:public

?

只能用在方法或變量的修飾符

(1) const:指定無法修改字段或局部變量的值。

用于修改字段或局部變量的聲明。它指定字段或局部變量的值是常數,不能被修改。

(2) new:從基類成員隱藏繼承的成員。

在用作修飾符時,new關鍵字可以顯式隱藏從基類繼承的成員。隱藏繼承的成員意味著該成 員的派生版本將替換基類版本。在不使用 new修飾符的情況下隱藏成員是允許的,但會生成警告。使用 new顯式隱藏成員會取消此警告,并記錄代之以派生版本這一事實。

若要隱藏繼承的成員,請使用相同名稱在派生類中聲明該成員,并使用 new修飾符修飾該成員。

對同一成員同時使用 new和override是錯誤的,因為這兩個修飾符在含義上相互排斥。使用 new會用同樣的名稱創建一個新成員并使原始成員變為隱藏的,而 override則擴展繼承成員的實現。

(3) virtual:在派生類中聲明其實現可由重寫成員更改的方法或訪問器。

用于修飾方法、屬性、索引器或事件聲明,并且允許在派生類中重寫這些對象。

調用虛方法時,將為重寫成員檢查該對象的運行時類型。將調用大部分派生類中的該重寫成員,如果沒有派生類重寫該成員,則它可能是原始成員。

默認情況下,方法是非虛擬的。不能重寫非虛方法。

virtual修飾符不能與 static、abstract和 override修飾符一起使用。

除了聲明和調用語法不同外,虛擬屬性的行為與抽象方法一樣。

(4) override:提供從基類繼承的虛擬成員的新實現。

要擴展或修改繼承的方法、屬性、索引器或事件的抽象實現或虛實現,必須使用 override修飾符。

(5) readonly:聲明一個字段,該字段只能賦值為該聲明的一部分或者在同一個類的構造函數中。

是可以在字段上使用的修飾符。當字段聲明包括 readonly修飾符時,該聲明引入的字段賦值只能作為聲明的一部分出現,或者出現在同一類的構造函數中。在此示例中,字段year的值無法在ChangeYear方法中更改,即使在類構造函數中給它賦了值。


=========================================================================

C#中除訪問修飾符外,還有很多非訪問的修飾符:

partial,abstract,sealed,static,virtual,override。

partial:部分類,可以將一個類分成幾部分寫在不同的文件中,最終編譯時將合并

??????? 成一個文件,且各個部分不能分散在不同程序集中。

abstract:抽象類,不能夠創建該類的實例;修飾方法時表示該方法需要由子類來 ?

???????? 實現,如果子類沒有實現該方法,那么子類同樣是抽象類。含有抽象方? ?

???? 法的類一定是抽象類。

sealed:密封類,該類不能夠被繼承;修飾方法時表示該方法不能被重寫。

static:靜態類,不能被實例化,既然不能被實例化,那么這個類也就不能夠含有 ?

?????? 對象成員,即該類所有成員為靜態;訪問類成員時只能通過“類名.成員?? ?

???? 名”的方式訪問。

virtual:修飾方法成員,表示虛方法。父類可以含有該類的實現,子類可以重寫該

???????? 方法。

override:表示該方法重寫了父類的方法。

無或internal
? 類只能在當前項目中訪問
public
?類可以在任何地方訪問公有訪問。不受任何限制。

abstract或internal abstract
??? 類只能在當前項目中訪問,不能實例化,只能繼承私有訪問
public abstract
??? 類可以在任何地方訪問,不能實例化,只能繼承
sealed或internal sealed
??? 類只能在當前項目中訪問,不能派生,只能實例化
public sealed
??? 類可以在任何地方訪問,不能派生,只能實例化

轉載于:https://www.cnblogs.com/xwl317/p/6836128.html

總結

以上是生活随笔為你收集整理的C#语言中的修饰符的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。