Heim >Backend-Entwicklung >C++ >Was sind die unerwarteten Standard -Zugriffsmodifikatoren in C#?

Was sind die unerwarteten Standard -Zugriffsmodifikatoren in C#?

DDD
DDDOriginal
2025-01-29 04:14:091013Durchsuche

What Are the Unexpected Default Access Modifiers in C#?

Die Standardzugriffdekoration im C#

c# roy Der Standardzugriff auf die Klasse, die Methoden und andere Mitglieder und die Schutzstufe seiner Anwendung können unerwartet sein.

Die Standardzugriffsebene

Der Standardzugangsmodifikator in C# ist keine explizite Anweisung, sondern hängt vom Kontext ab. Im Allgemeinen hat es die am stärksten eingeschränkten Zugangsberechtigungen

mit ausgezeichnet.

Zum Beispiel im folgenden Codefragment:

Der Standardzugriffsmodifikator ist:

<code class="language-csharp">public class Outer
{
    void Foo() {}
    class Inner {}
}</code>

Außenklasse: Internet (Zugriff auf dasselbe Programm)

    Foo -Methode: privat (in der Klasse zugänglich)
  • innere Klasse: privat (nur in der äußeren Klasse zugänglich)
  • Attributzugriff

Attribut ist eine besondere Situation. Obwohl das Attribut selbst möglicherweise öffentliche Zugriffsberechtigungen hat, kann der Setter explizit begrenzt sein:

Hier kann der Name öffentlich besucht werden, aber die Änderungsberechtigungen sind auf die Klasse selbst beschränkt.

Andere Beschreibungen
<code class="language-csharp">public string Name
{
    get { ... }
    private set { ... }
}</code>

Namensraum hat die öffentlichen Zugriffsrechte versteckt. Namensbereich oder Typ in der Compilation Unit stand für die Internetzugangsberechtigungen.

    Klassenmitglieder haben standardmäßig private Zugriffsrechte.
  • Schnittstelle und Lift -Mitglied versteckte Formel ist öffentlich.
  • Der verschachtelte Typ erbt den Standardzugriff auf den Vatertyp.

Das obige ist der detaillierte Inhalt vonWas sind die unerwarteten Standard -Zugriffsmodifikatoren in C#?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn