C 可訪問性約束

2021-05-17 12:49:55 字數 837 閱讀 6263

c#

語言中的有些構造要求某個型別至少與某個成員或其他型別具有同樣的可訪問性

(at least as accessible as)

。如果t

的可訪問域是

m可訪問域的超集,我們就說型別

t至少與成員或型別

m具有同樣的可訪問性。換言之,如果

t在可訪問

m的所有上下文中都是可訪問的,則

t至少與

m具有同樣的可訪問性。

存在下列可訪問性約束: ·

類型別的直接基類必須至少與類型別本身具有同樣的可訪問性。 ·

介面型別的顯式基介面必須至少與介面型別本身具有同樣的可訪問性。 ·

委託型別的返回型別和引數型別必須至少與委託型別本身具有同樣的可訪問性。 ·

常量的型別必須至少與常量本身具有同樣的可訪問性。 ·

欄位的型別必須至少與字段本身具有同樣的可訪問性。 ·

方法的返回型別和引數型別必須至少與方法本身具有同樣的可訪問性。 ·

屬性的型別必須至少與屬性本身具有同樣的可訪問性。 ·

事件的型別必須至少與事件本身具有同樣的可訪問性。 ·

索引器的型別和引數型別必須至少與索引器本身具有同樣的可訪問性。 ·

運算子的返回型別和引數型別必須至少與運算子本身具有同樣的可訪問性。

·例項建構函式的引數型別必須至少與例項建構函式本身具有同樣的可訪問性。

在下面的示例中

class a

public class b: a b

類導致編譯時錯誤,因為

a並不具有至少與

b相同的可訪問性。

同樣,在示例中

C 成員可訪問性

c 成員可訪問性 收藏 根據網上資料整理而成。一 c 中已宣告的可訪問性 1.public 訪問不受限制 2.internal 訪問僅限於所屬程式集 3.protected 訪問僅限於當前類和其子類 4.internal protected 訪問僅限於當前程式集或其子類 子類可以不屬於當前程式集 5...

C 可訪問性級別

使用訪問修飾符 public protected internal 或private 可以為成員指定以下宣告的可訪問性之一。宣告的可訪問性 含義 public 訪問不受限制。protected 訪問僅限於包含類或從包含類派生的型別。internal 訪問僅限於當前程式集。protectedinter...

C 可訪問性級別

使用訪問修飾符 public protected internal 或 private 可以為成員指定以下宣告的可訪問性之一。宣告的可訪問性 含義public 訪問不受限制。protected 訪問僅限於包含類或從包含類派生的型別。internal 訪問僅限於當前程式集。protectedinter...