C# für Einsteiger: Klassenschnittstellen

Üblicherweise beginnen die Namen von Schnittstellen (Interfaces) mit einem großen „I“, wobei der nächste Buchstabe ebenfalls großgeschrieben wird. (Zwei Beispiele hierfür sind IComparable und IEnumerable.) Eine Schnittstelle ist wie eine abstrakte Basisklasse: Beide legen keine genauen Einzelheiten der Implementierung fest, und beide werden von abgeleiteten Klassen verwendet. Allerdings kann eine Klasse von einer Basisklasse abgeleitet sein und gleichzeitig eine Schnittstelle implementieren – oder sogar mehrere Schnittstellen. (Im Unterschied dazu können C#-Klassen nur von einer Basisklasse erben.) In dieser Hinsicht sind die Schnittstellen universeller – und wohl nützlicher – als die Klassen-Vererbung.

Schnittstellen-Implementierungen tragen zur Sicherung der Konsistenz bei. So haben Studien gezeigt, dass Software, die mit Klassenbibliotheken entwickelt wurde, die Schnittstellen implementieren, tendenziell weniger Fehler aufweist.

Schnittstellen eignen sich optimal für Situationen, in denen eine Gruppe von Programmierern eine Klassenbibliothek erstellt hat (z. B. die Schöpfer des .NET Frameworks) und eine andere Gruppe diese Klassen benutzt (z. B. Sie und ich). Die Schnittstellen-Implementierung stellt außerdem eine gute Möglichkeit für einen Teamleiter dar, um Projekt-Spezifikationen vorzugeben: Der Projektleiter schreibt die Schnittstellen und spezifiziert obligatorische Implementierungen innerhalb der Klassen.

Wie ich später in diesem Artikel zeigen werde, unterstützt die Visual Studio .NET-Entwicklungsumgebung selbst die Umsetzung eines von einer Schnittstelle vorgegebenen Vertrags. Wenn Sie versuchen, ein Projekt auszuführen, das eine Klasse mit einer Schnittstelle enthält, aber die von der Schnittstelle spezifizierten Mitglieder in dieser Klasse nicht implementiert sind, werden Sie eine Syntaxfehlermeldung erhalten, und das Projekt mit diesem Code wird sich weder ausführen noch kompilieren lassen.

Page: 1 2 3 4 5

ZDNet.de Redaktion

Recent Posts

MadMxShell: Hacker verbreiten neue Backdoor per Malvertising

Die Anzeigen richten sich an IT-Teams und Administratoren. Ziel ist der Zugriff auf IT-Systeme.

3 Tagen ago

April-Patches für Windows legen VPN-Verbindungen lahm

Betroffen sind Windows 10 und Windows 11. Laut Microsoft treten unter Umständen VPN-Verbindungsfehler auf. Eine…

3 Tagen ago

AMD steigert Umsatz und Gewinn im ersten Quartal

Server-CPUs und Server-GPUs legen deutlich zu. Das Gaming-Segment schwächelt indes.

3 Tagen ago

Google stopft schwerwiegende Sicherheitslöcher in Chrome 124

Zwei Use-after-free-Bugs stecken in Picture In Picture und der WebGPU-Implementierung Dawn. Betroffen sind Chrome für…

5 Tagen ago

Studie: 91 Prozent der Ransomware-Opfer zahlen Lösegeld

Die durchschnittliche Lösegeldzahlung liegt bei 2,5 Millionen Dollar. Acht Prozent der Befragten zählten 2023 mehr…

5 Tagen ago

DMA: EU stuft auch Apples iPadOS als Gatekeeper ein

Eine neue Analyse der EU-Kommission sieht vor allem eine hohe Verbreitung von iPadOS bei Business-Nutzern.…

5 Tagen ago