Akadálymentességi szintek (C#-referencia)

Használja a hozzáférési módosítókatpublic, protectedinternalvagy private adja meg az alábbi deklarált akadálymentességi szintek egyikét a tagok számára.

  • public: A hozzáférés nincs korlátozva.
  • protected: A hozzáférés csak az azt tartalmazó osztályra vagy az azt tartalmazó osztályból származtatott típusokra korlátozódik.
  • internal: A hozzáférés az aktuális szerelvényre korlátozódik.
  • protected internal: Az access csak az aktuális szerelvényre vagy az azt tartalmazó osztályból származtatott típusokra korlátozódik.
  • private: Az access csak az azt tartalmazó típusra korlátozódik.
  • private protected: A hozzáférés az aktuális szerelvényen belüli, az azt tartalmazó osztályból származtatott osztályra vagy típusokra korlátozódik.

A C# nyelv referenciadokumentuma a C# nyelv legújabb kiadású verzióját ismerteti. Emellett a közelgő nyelvi kiadás nyilvános előzetes verziójú funkcióinak kezdeti dokumentációját is tartalmazza.

A dokumentáció azonosítja azokat a funkciókat, amelyeket először a nyelv utolsó három verziójában vagy az aktuális nyilvános előzetes verziókban vezetnek be.

Jótanács

Ha meg szeretné tudni, hogy mikor jelent meg először egy funkció a C#-ban, tekintse meg a C# nyelvi verzióelőzményeiről szóló cikket.

A legfelső szintű (nem beágyazott) típusok használhatják a fájlmódosítót. A file módosító korlátozza a kódhoz való hozzáférést ugyanabban a forrásfájlban. A módosító nem kombinálható file egyetlen hozzáférési módosítóval sem.

Csak egy hozzáférés-módosító használata egy taghoz vagy típushoz, kivéve, ha a kombinációkat vagy protected internal a private protected kombinációkat használja.

Ne használjon hozzáférési módosítókat a névtereken. A névterek nem rendelkeznek hozzáférési korlátozásokkal.

A tagdeklaráció kontextusától függően csak bizonyos deklarált hozzáférési képességek engedélyezettek. Ha nem ad meg hozzáférési módosítót egy tagdeklarációban, a rendszer alapértelmezett akadálymentességet használ.

A legfelső szintű típusok, amelyek nem más típusokba vannak beágyazva, csak és internalpublic kizárólag akadálymentesek lehetnek. Az ilyen típusok alapértelmezett akadálymentessége a következő internal: .

A beágyazott típusok, amelyek más típusok tagjai, deklarálhatják a hozzáférési képességeket az alábbi táblázatban leírtak szerint.

Tagok: A tagok alapértelmezett kisegítő lehetőségei A tag engedélyezett deklarált akadálymentessége
enum public Egyik sem
class private public

protected

internal

private

protected internal

private protected
interface public public

protected

internal

private*

protected internal

private protected
struct private public

internal

private

* Az interface akadálymentességgel rendelkező tagoknak alapértelmezett implementációval private kell rendelkezniük.

Megjegyzés:

Ha a kulcsszómódosítóval record módosít egy osztályt vagy szerkezetet, használja ugyanazokat a hozzáférési módosítókat. Emellett a record módosítóval az alapértelmezett tag-akadálymentesség továbbra private is az osztály és a szerkezet számára is elérhető.

A beágyazott típus akadálymentessége az akadálymentességi tartományától függ, amelyet a tag deklarált akadálymentessége és az azonnal tartalmazó típus akadálymentességi tartománya határoz meg. A beágyazott típus akadálymentességi tartománya azonban nem haladhatja meg az azt tartalmazó típust.

C# nyelvi specifikáció

További információkért lásd a C# nyelvi specifikációját. A nyelvi specifikáció a C#-szintaxis és -használat végleges forrása.

Lásd még