Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial programming >> C Sprache

C# Zugriffsmodifizierer (Specifiers) verstehen: Mit praktischen Beispielen

Was sind Zugriffsmodifizierer in C#?

Zugriffsmodifizierer – Schlüsselwörter, die die Sichtbarkeit von Typen und Typmembern steuern – sind ein Eckpfeiler der Kapselung in C#. Sie bestimmen, welcher Code eine Klasse, Eigenschaft oder Methode referenzieren darf, und stellen sicher, dass nur die beabsichtigten Programmteile mit internen Implementierungsdetails interagieren können.

In C# stehen sechs Zugriffsmodifizierer zur Verfügung:

In diesem Tutorial lernen Sie:

Private Zugriffsmodifizierer

Die Markierung eines Members als private beschränkt dessen Nutzung auf die enthaltende Klasse. Externer Code – einschließlich anderer Klassen innerhalb derselben Assembly – kann nicht auf einen privaten Member zugreifen.

Beispiel für Private Zugriffsmodifizierer

Lassen Sie uns SetTutorial in Tutorial.cs modifizieren, um diese Regel zu veranschaulichen. Ändern Sie das public-Schlüsselwort zu private:

C# Zugriffsmodifizierer (Specifiers) verstehen: Mit praktischen Beispielen

Wechseln Sie nun zu Program.cs. Der Compiler wird den SetTutorial-Aufruf mit einer roten Wellenlinie unterstreichen, was anzeigt, dass die Methode von diesem Ort aus nicht zugänglich ist.

C# Zugriffsmodifizierer (Specifiers) verstehen: Mit praktischen Beispielen

Public Zugriffsmodifizierer

Öffentliche Member sind für jeden Code sichtbar, der den enthaltenden Typ referenzieren kann. Dies ist der Default für Member, die keinen Zugriffsmodifizierer angeben.

Beispiel für Public Zugriffsmodifizierer

C# Zugriffsmodifizierer (Specifiers) verstehen: Mit praktischen Beispielen

Da SetTutorial als public deklariert ist, kann es aus Program.cs ohne Compilerfehler aufgerufen werden.

Protected Zugriffsmodifizierer

protected-Member ist nur innerhalb seiner eigenen Klasse und abgeleiteter Klassen zugänglich. Diese Zugriffsebene eignet sich ideal für wiederverwendbare Basisklassen, während die interne Implementierung geschützt bleibt.

Internal Zugriffsmodifizierer

Konstruktoren in C#

Konstruktoren initialisieren eine neue Instanz einer Klasse. Sie tragen den Klassennamen, haben keinen Rückgabetyp und werden automatisch aufgerufen, wenn new verwendet wird.

  1. Der Standardzugriff für einen Konstruktor ist public, sofern nicht anders angegeben.
  2. Ein Konstruktor darf keinen Rückgabetyp deklarieren.

Beispiel für einen C# Konstruktor

Wir demonstrieren einen Konstruktor, der Standardwerte für TutorialID und TutorialName setzt, wenn ein Tutorial-Objekt erstellt wird.

Schritt 1) Fügen Sie den Konstruktor zu Tutorial.cs hinzu:

C# Zugriffsmodifizierer (Specifiers) verstehen: Mit praktischen Beispielen

Code-Erklärung

  1. Die Methode namens Tutorial wird als Konstruktor behandelt. Sie läuft automatisch, wenn eine Instanz erstellt wird.
  2. Der Konstruktor weist 0 zu TutorialID und "Default" zu TutorialName zu, um einen konsistenten Initialzustand zu gewährleisten.

In Program.cs entfernen Sie den Aufruf von SetTutorial, um sich auf das Konstruktorverhalten zu konzentrieren:

C# Zugriffsmodifizierer (Specifiers) verstehen: Mit praktischen Beispielen

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DemoApplication {
    class Tutorial {
        public int TutorialID;
        public string TutorialName;
        public Tutorial() {
            TutorialID = 0;
            TutorialName = "Default";
        }
        public void SetTutorial(int pID, string pName) {
            TutorialID = pID;
            TutorialName = pName;
        }
        public string GetTutorial() {
            return TutorialName;
        }
        static void Main(string[] args) {
            Tutorial pTutor = new Tutorial();
            Console.WriteLine(pTutor.GetTutorial());
            Console.ReadKey();
        }
    }
}

Code-Erklärung

  1. Eine Instanz von Tutorial wird mit dem new-Schlüsselwort erstellt.
  2. Die GetTutorial-Methode ruft den Standard-TutorialName ab, der dann via Console.WriteLine angezeigt wird.

Bei Ausführung zeigt die Konsole:

Ausgabe:

C# Zugriffsmodifizierer (Specifiers) verstehen: Mit praktischen Beispielen

Die Ausgabe bestätigt, dass der Konstruktor ausgeführt wurde und TutorialName auf "Default" initialisiert hat.

Hinweis: Der Wert "Default" stammt vom Konstruktor, nicht von externem Code.

Zusammenfassung

  • Zugriffsmodifizierer definieren die Sichtbarkeit von Klassenmembern.
  • private verbirgt Member vor allen externen Code.
  • public stellt Member für jeden referenzierenden Code bereit.
  • protected beschränkt Member auf die Klasse und ihre Nachkommen.
  • internal begrenzt Sichtbarkeit auf die aktuelle Assembly.
  • Konstruktoren initialisieren Felder bei Objektinstanziierung.

C Sprache

  1. C++ do‑while‑Schleife: Syntax, Praxisbeispiele und verschachtelte Schleifen
  2. C++ Zeiger meistern: Konzepte, Beispiele & praktische Anwendungen
  3. C++ Operator‑Overloading: Praktischer Leitfaden mit Code‑Beispielen
  4. C++-Funktionen erklärt: Mit praktischen Code-Beispielen
  5. C# Collections meistern: Praktisches Tutorial mit Real-World-Beispielen
  6. Pythons str.count(): Zeichen & Teilstrings zählen mit Beispielen
  7. Python round()-Funktion erklärt mit praktischen Beispielen
  8. Pythons map()-Funktion meistern: Syntax, Beispiele und Best Practices
  9. Python timeit(): Ausführungszeit messen mit praktischen Beispielen
  10. Python list.count(): Experten-Guide mit praktischen Beispielen