Einführung in Interfaces
Lernen Sie, wie Interfaces Verträge für Klassen definieren und die Flexibilität von Code erhöhen
Einführung in Interfaces ist eine kostenlose C# Academy-Lektion auf CoddyKit. Dies ist Lektion 1 von 6. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des C# Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der C# Academy-Kurs umfasst insgesamt 6 Lektionen.
Einführung in Schnittstellen
Einführung in Schnittstellen
Willkommen zur ersten Lektion über fortgeschrittene Programmierkonzepte! In dieser Lektion lernen Sie Schnittstellen kennen, erfahren, welchem Zweck sie dienen und wie Sie sie verwenden, um Abstraktion und Flexibilität in Ihren C#-Programmen zu erreichen. Legen wir los!

Was ist eine Schnittstelle?
Was ist eine Schnittstelle?
Eine Schnittstelle ist ein Vertrag, der eine Reihe von Methoden und Eigenschaften definiert, die eine Klasse implementieren muss. Sie selbst stellt keine Implementierung bereit, stellt aber sicher, dass jede Klasse, die die Schnittstelle implementiert, einer bestimmten Struktur folgt.
Beispiel: Eine Schnittstelle für ein „Vehicle“ könnte Methoden wie Start() und Stop() definieren, die alle Fahrzeuge implementieren müssen.
Wichtiger Punkt: Schnittstellen ermöglichen es Ihnen, flexiblen und wiederverwendbaren Code zu entwerfen, indem sie Verhalten und Implementierung voneinander trennen.
Eine Schnittstelle definieren
Eine Schnittstelle definieren
Um in C# eine Schnittstelle zu definieren, verwenden Sie das Schlüsselwort interface. Beispiel:
Tipp: Konventionell beginnen die Namen von Schnittstellen in C# mit dem Buchstaben I.
using System;
interface IVehicle {
void Start();
void Stop();
}
Eine Schnittstelle implementieren
Eine Schnittstelle implementieren
Um eine Schnittstelle zu implementieren, muss eine Klasse alle in der Schnittstelle deklarierten Methoden und Eigenschaften definieren. Beispiel:
Wichtiger Punkt: Eine Klasse kann mehrere Schnittstellen implementieren und dadurch mehrere Verhaltensweisen unterstützen.
using System;
interface IVehicle {
void Start();
void Stop();
}
class Car : IVehicle {
public void Start() {
Console.WriteLine("Car is starting.");
}
public void Stop() {
Console.WriteLine("Car is stopping.");
}
}
class Program {
static void Main() {
IVehicle myCar = new Car();
myCar.Start();
myCar.Stop();
}
}
Warum Schnittstellen verwenden?
Warum Schnittstellen verwenden?
Schnittstellen bieten mehrere Vorteile:
- Abstraktion: Definieren Sie Verhalten, ohne die Implementierung festzulegen.
- Flexibilität: Eine Klasse kann mehrere Schnittstellen implementieren und dadurch mehrere Rollen unterstützen.
- Konsistenz: Erzwingen Sie eine gemeinsame Struktur für verwandte Klassen.
Tipp: Verwenden Sie Schnittstellen, wenn Sie einen gemeinsamen Vertrag definieren möchten, ohne vorzugeben, wie er erfüllt werden soll.
Mehrere Schnittstellen kombinieren
Mehrere Schnittstellen kombinieren
Eine Klasse kann mehrere Schnittstellen implementieren, um verschiedene Verhaltensweisen zu kombinieren. Beispiel:
using System;
interface IVehicle {
void Start();
void Stop();
}
interface IRadio {
void PlayMusic();
}
class Car : IVehicle, IRadio {
public void Start() {
Console.WriteLine("Car is starting.");
}
public void Stop() {
Console.WriteLine("Car is stopping.");
}
public void PlayMusic() {
Console.WriteLine("Playing music.");
}
}
class Program {
static void Main() {
Car myCar = new Car();
myCar.Start();
myCar.PlayMusic();
myCar.Stop();
}
}
Übungsaufgabe
Übungsaufgabe
Erstellen Sie eine Schnittstelle IShape mit einer Methode CalculateArea(). Implementieren Sie diese Schnittstelle in den Klassen Rectangle und Circle. Beispiel:
using System;
interface IShape {
double CalculateArea();
}
class Rectangle : IShape {
public double Width { get; set; }
public double Height { get; set; }
public double CalculateArea() {
return Width * Height;
}
}
class Circle : IShape {
public double Radius { get; set; }
public double CalculateArea() {
return Math.PI * Radius * Radius;
}
}
class Program {
static void Main() {
IShape rectangle = new Rectangle { Width = 5, Height = 4 };
IShape circle = new Circle { Radius = 3 };
Console.WriteLine("Rectangle Area: " + rectangle.CalculateArea());
Console.WriteLine("Circle Area: " + circle.CalculateArea());
}
}
Bewährte Vorgehensweisen bei der Verwendung von Schnittstellen
Bewährte Vorgehensweisen bei der Verwendung von Schnittstellen
Hier sind einige bewährte Vorgehensweisen:
- Verwenden Sie Schnittstellen, um Verträge zu definieren, die Klassen erfüllen müssen.
- Bevorzugen Sie bei nicht verwandten Klassen mit gemeinsamem Verhalten Schnittstellen gegenüber Vererbung.
- Halten Sie Schnittstellen fokussiert und vermeiden Sie unnötige Methoden oder Eigenschaften.
Tipp: Schnittstellen sollten beschreiben, was eine Klasse tut, nicht wie sie es tut.
Gute Arbeit!
Gute Arbeit!
Herzlichen Glückwunsch! Sie haben die Grundlagen von Schnittstellen gelernt und erfahren, wie Sie sie verwenden, um Abstraktion und Flexibilität in Ihren Programmen zu erreichen. In der nächsten Lektion beschäftigen wir uns mit abstrakten Klassen und lernen, worin sie sich von Schnittstellen unterscheiden. Programmieren wir weiter!

Häufig gestellte Fragen
Ist die Lektion „Einführung in Interfaces“ kostenlos?
Ja — der vollständige Text von „Einführung in Interfaces“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des C# Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der C# Academy-Kurs umfasst insgesamt 6 Lektionen.
Was lerne ich in „Einführung in Interfaces“?
Lernen Sie, wie Interfaces Verträge für Klassen definieren und die Flexibilität von Code erhöhen Du übst C# Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um C# Academy zu starten?
Keine Vorkenntnisse erforderlich. C# Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 1 von 6.
Wie lange dauert die Lektion „Einführung in Interfaces“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser C# Academy-Lektion Code schreiben und ausführen?
Ja. Jede C# Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Einführung in Interfaces
- Abstrakte Klassen
- Statische Member und Methoden
- Enums und Structs erkunden
- Delegates und Events
- Arbeiten mit Collections: Listen, Wörterbüchern und Warteschlangen