Ü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.
Die Anzeigen richten sich an IT-Teams und Administratoren. Ziel ist der Zugriff auf IT-Systeme.
Betroffen sind Windows 10 und Windows 11. Laut Microsoft treten unter Umständen VPN-Verbindungsfehler auf. Eine…
Server-CPUs und Server-GPUs legen deutlich zu. Das Gaming-Segment schwächelt indes.
Zwei Use-after-free-Bugs stecken in Picture In Picture und der WebGPU-Implementierung Dawn. Betroffen sind Chrome für…
Die durchschnittliche Lösegeldzahlung liegt bei 2,5 Millionen Dollar. Acht Prozent der Befragten zählten 2023 mehr…
Eine neue Analyse der EU-Kommission sieht vor allem eine hohe Verbreitung von iPadOS bei Business-Nutzern.…