訪問修飾符

2021-05-22 00:07:14 字數 1807 閱讀 7340

【訪問修飾符】

可以限制類和結構,以便只有宣告它們的程式或命名空間才能使用它們。可以限制類成員,以便只有派生類才能使用它們,或者限制類成員,以便只有當前命名空間或程式中的類才能使用它們。訪問修飾符是新增到類、結構或成員宣告的關鍵字,用以指定這些限制。

這些關鍵字包括

使用這些訪問修飾符可指定下列五個可訪問性級別:

【可訪問性級別】

乙個成員或型別只能有乙個訪問修飾符,但使用 protected internal 組合時除外。

命名空間上不允許使用訪問修飾符。命名空間沒有訪問限制。

根據出現成員宣告的上下文,只允許某些宣告的可訪問性。如果在成員宣告中未指定訪問修飾符,則使用預設的可訪問性。

不巢狀在其他型別中的頂級型別的可訪問性只能是 internal 或 public。這些型別的預設可訪問性是 internal。

巢狀型別是其他型別的成員,它們可以具有下表所示的宣告的可訪問性。

屬於

預設的成員可訪問性

該成員允許的宣告的可訪問性

enum

public

無class

private

public

protected

internal

private

protected internal

inte***ce

public

無struct

private

public

internal

private

【類和結構的可訪問性】

沒有巢狀在其他類或結構中的類和結構可以是公共的,也可以是內部的。宣告為公共的型別可由任何其他型別訪問。宣告為內部的型別只能由同一程式集中的型別訪問。預設情況下,類和結構宣告為內部的,除非向類定義新增了關鍵字 public,如前面的示例所示。類或結構定義可以新增 internal 關鍵字,使其訪問級別成為顯式的。訪問修飾符不影響類或結構自身;它始終能夠訪問自身及其所有成員。

【類成員和結構成員的可訪問性】

可以使用五種訪問型別之一來宣告類成員或結構成員。就像類和結構自身一樣,它們也可以是公共的或內部的。如果使用 protected 關鍵字將類成員宣告為受保護的,則只有使用該類作為基類的派生型別才能訪問該成員。通過組合 protected 和 internal 關鍵字,可以將類成員標記為 protected internal;只有派生型別或同一程式集中的型別才能訪問該成員。

最後,可以使用 private 關鍵字將類成員或結構成員宣告為私有的,指示只有宣告該成員的類或結構才能訪問該成員。

注意:protected internal 可訪問性的意思是受保護「或」內部,而不是受保護「和」內部。換句話說,可以從同一程式集內的任何類(包括派生類)中訪問 protected internal 成員。若要限制為只有同一程式集內的派生類可以訪問,請將類本身宣告為內部,並將其成員宣告為受保護。

【其他型別】

介面也宣告為公共型別或內部型別。介面預設具有內部訪問級別。介面成員始終是公共的,不能應用任何訪問修飾符。

命名空間和列舉成員始終是公共的,不能應用任何訪問修飾符。

預設情況下,委託預設具有內部訪問級別。

預設情況下,在命名空間中或在編譯單元頂部宣告的任何型別都是內部的,但是可以成為公共的

訪問修飾符

前面我們已經看到並運用了訪問修飾符,現在我們來進一步的掌握。類成員支援五種訪問修飾 訪問不受限制 public 公共的 訪問範圍限定於它所屬的類或從該類派生的型別 protected 保護的 訪問範圍限定於此程式 internal 內部的 訪問範圍限定於此程式或那些由它所屬的類派生的型別 prote...

訪問修飾符

前面我們已經看到並運用了訪問修飾符,現在我們來進一步的掌握。類成員支援五種訪問修飾 訪問不受限制 public 公共的 訪問範圍限定於它所屬的類或從該類派生的型別 protected 保護的 訪問範圍限定於此程式 internal 內部的 訪問範圍限定於此程式或那些由它所屬的類派生的型別 prote...

訪問修飾符

1.public 任何外部的類都可以不受限制地訪問這個類的方法和資料成員。2.private 類中的所有方法和資料成員只能在此類中使用,外部無法訪問。3.protected 除了本身的類可以使用外,任何繼承自此類的子類都可以訪問。4.internal 在當前的專案中可以訪問,一般用於基於元件的開發。...