Zugriffsebenen (C#-Referenz)

Mit den Zugriffsmodifizierern public, protected, internal oder private kann einer der folgenden deklarierten Zugriffsebenen für Member angegeben werden.

Deklarierter Zugriff

Bedeutung

public

Der Zugriff ist nicht eingeschränkt.

protected

Der Zugriff ist auf die enthaltende Klasse oder die von der enthaltenden Klasse abgeleiteten Typen begrenzt.

internal

Der Zugriff ist auf die aktuelle Assembly begrenzt.

protected internal

Der Zugriff ist auf die aktuelle Assembly oder die von der enthaltenden Klasse abgeleiteten Typen begrenzt.

private

Der Zugriff ist auf den enthaltenden Typ begrenzt.

Für einen Member oder einen Typ ist nur ein Zugriffsmodifizierer zulässig, außer bei Verwendung der protected-internal-Kombination.

Zugriffsmodifizierer sind für Namespaces nicht zulässig. Namespaces weisen keine Zugriffsbeschränkungen auf.

Abhängig vom Kontext einer Memberdeklaration sind nur bestimmte deklarierte Zugriffe zulässig. Wenn in einer Memberdeklaration kein Zugriffsmodifizierer angegeben ist, wird ein Standardzugriff verwendet.

Typen der obersten Ebene, die nicht in anderen Typen geschachtelt sind, können lediglich über internal-Zugriff oder public-Zugriff verfügen. Der Standardzugriff auf diese Typen ist internal.

Geschachtelte Typen, die Member anderer Typen darstellen, können über deklarierte Zugriffe verfügen, wie in der nachstehenden Tabelle angegeben:

Member von

Standardmemberzugriff

Zulässiger deklarierter Memberzugriff

enum

public

None

class

private

public

protected

internal

private

protected internal

interface

public

None

struct

private

public

internal

private

Der Zugriff eines geschachtelten Typs hängt von seiner Zugriffsdomäne ab, die sowohl durch den deklarierten Zugriff des Members als auch durch die Zugriffsdomäne des unmittelbar enthaltenden Typs bestimmt wird. Die Zugriffsdomäne eines geschachtelten Typs kann jedoch nicht über die des enthaltenden Typs hinausgehen.

C#-Programmiersprachenspezifikation

Weitere Informationen finden Sie in der C#-Sprachspezifikation. Die Sprachspezifikation ist die verbindliche Quelle für die Syntax und Verwendung von C#.

Siehe auch

Referenz

C#-Schlüsselwörter

Zugriffsmodifizierer (C#-Referenz)

Zugriffsdomäne (C#-Referenz)

Einschränkungen bei der Verwendung von Zugriffsebenen (C#-Referenz)

Zugriffsmodifizierer (C#-Programmierhandbuch)

public (C#-Referenz)

private (C#-Referenz)

protected (C#-Referenz)

internal (C#-Referenz)

Konzepte

C#-Programmierhandbuch

Weitere Ressourcen

C#-Referenz