這年頭,坐久了就不舒服,我滴腰啊!!總感覺不舒服,各種姿勢……
看一看,本編主要內容:
1、c#修飾符有哪些?
2、c#類和類成員的修飾符和訪問?
分割線、分割線、分割線……………………………………………………
第乙個問題:
c#修飾符有哪些?
四個訪問修飾符,分別為,public、private、internal、protected
public:公共訪問,擁有最高訪問級別,對訪問沒有限制
private:私有訪問,擁有最低訪問級別,私有成員只可以在類內部使用,不供外部其他類使用(包括派生,繼承的類)
internal:型別和型別成員的訪問修飾符,只有在同一專案下的程式集檔案中才可進行訪問,外部專案無法訪問(public則可以)
protected:受保護類成員,訪問級別為,可由其所派生類例項訪問。
其他訪問修飾符,abstract、partial、sealed、static
abstract:指示所修飾的內容缺少實現或未完全實現,可用於類、方法、屬性、索引器和事件,在類宣告中使用abstract修飾符以指示某個類只能是其他類的基類,標間為抽象或包含在抽象類中的成員必須通過從抽象類派生的類重寫來實現
partial:不完整型別宣告。類、結構和介面修飾符,用於把類定義拆分為幾個部分,便於**管理
如:
class classa
void b()
}
與partial class classa
}partial class classa
}
兩者是一樣的
sealed:當對乙個類應用 sealed 修飾符
時,此修飾符會阻止其他類從該類繼承。
static:靜態類和成員。如果為靜態類,那麼型別本身只包含靜態成員,不能被例項化
第二個問題:
c#類和類成員的修飾符和訪問?
編輯單元或命名空間中宣告的型別可以具有public或internal可訪問性,預設為internal;
c#類的修飾符:可以為public、internal、abstract、static、partial、sealed
預設為internal,不能有private和protected修飾符來修飾c#類,如果定義為public則可表示在其他專案中也可對其進行訪問
c#類的成員修飾符:可以為public、private、protected、internal、abstract、static,預設為private
結構體修飾符:public、internal、partial
預設為internal(同一命名空間可使用,如果用using載入了,相當於把此命名空間的結構體併入了別的命名空間中)
介面預設修飾符為internal
介面的成員隱式地具有public可訪問性,在介面成員的宣告中不允許使用訪問修飾符;
列舉的成員隱式地具有public可訪問性,宣告中不允許使用訪問修飾符。
其他:類、結構體修飾符預設為internal;其成員預設為private。
結構體修飾符不可以為abstract修飾符,因為結構體不可以繼承;不可以為static,但其成員變數可以;可以為partial修飾符
結構體為值型別,可以不用new,但struct中的變數需要賦值,才可以使用;如果使用了new,那麼struct中變數就會產生預設值,int為0,string為null等、、
【可參考】
C 修飾符 類修飾符和成員修飾符
c 修飾符之類修飾符 public internal partial abstract sealed static internal 本程式集內的成員可以訪問。partial 部分類,可以將乙個類分成幾部分寫在不同檔案中,最終編譯時將合併成乙個檔案,且各個部分不能分散在不同程式集中。c 修飾符之成員...
學習C 修飾符 類修飾符和成員修飾符
c 修飾符之類修飾符 public internal partial abstract sealed static c 修飾符之成員修飾符 public protected private internal sealed abstract virtual override readonly cons...
C 的類修飾符和成員修飾符
一 類修飾符 類修飾符 public internal partial abstract sealed static new protected private protected internal 1 public 訪問不受限制的,所有的本程式集以及其他的程式集裡面的類都能夠訪問 2 intern...