C# - Klassen: Ein Anfängerleitfaden
Hallo da drüben, zukünftige Programmierer! Heute machen wir uns auf eine aufregende Reise in die Welt der C# Klassen. Keine Sorge, wenn Sie noch nie kodiert haben – ich werde Ihr freundlicher Guide sein und alles Schritt für Schritt erklären. Also, tauchen wir ein!
Was ist eine Klasse?
Bevor wir beginnen, lassen Sie uns verstehen, was eine Klasse ist. Stellen Sie sich eine Klasse als Schablone vor, um Objekte zu erstellen. Es ist wie ein Plätzchenausstecher, der die Form und Eigenschaften der Plätzchen definiert, die Sie machen werden. In der Programmierung definiert eine Klasse die Eigenschaften und Verhaltensweisen, die Objekte dieser Klasse haben werden.
Definition einer Klasse
Lassen Sie uns mit der Erstellung einer einfachen Klasse beginnen. Wir werden eine Dog
Klasse erstellen, denn wer liebt Hunde nicht?
public class Dog
{
// Klassenmitglieder kommen hier hin
}
Dies ist die grundlegende Struktur einer Klasse. Das Schlüsselwort public
bedeutet, dass diese Klasse von anderen Teilen Ihres Programms zugänglich ist. Innerhalb der geschweiften Klammern {}
, definieren wir die Klassenmitglieder.
Hinzufügen von Eigenschaften
Eigenschaften sind wie Merkmale unseres Hundes. Lassen Sie uns einige hinzufügen:
public class Dog
{
public string Name;
public int Age;
public string Breed;
}
Jetzt hat unsere Dog
Klasse einen Namen, Alter und Rasse. Diese werden als Felder oder Eigenschaften der Klasse bezeichnet.
Member-Funktionen und Kapselung
Member-Funktionen (oder Methoden) sind Aktionen, die unser Hund ausführen kann. Lassen Sie uns eine Methode hinzufügen, damit unser Hund bellen kann:
public class Dog
{
public string Name;
public int Age;
public string Breed;
public void Bark()
{
Console.WriteLine("Wuff! Wuff!");
}
}
Die Bark
Methode ist eine einfache Aktion, die "Wuff! Wuff!" in die Konsole schreibt.
Kapselung
Kapselung ist so, als ob man die Eigenschaften des Hundes in eine schützende Blase packt. Es ist eine Möglichkeit, den Zugriff auf die Klassenmitglieder zu steuern. Lassen Sie uns unsere Klasse ändern, um Kapselung zu verwenden:
public class Dog
{
private string name;
private int age;
public string Breed { get; set; }
public string Name
{
get { return name; }
set { name = value; }
}
public int Age
{
get { return age; }
set
{
if (value > 0)
age = value;
}
}
public void Bark()
{
Console.WriteLine("Wuff! Wuff!");
}
}
Jetzt sind name
und age
privat und werden über öffentliche Eigenschaften zugreifbar. Dies ermöglicht es uns, Logik hinzuzufügen, wie z.B. sicherzustellen, dass das Alter stets positiv ist.
C# Konstruktor
Ein Konstruktor ist eine spezielle Methode, die aufgerufen wird, wenn Sie eine neue Instanz einer Klasse erstellen. Es ist so, als ob Sie Ihren Hund einrichten, wenn Sie ihn das erste Mal bekommen. Lassen Sie uns einen Konstruktor zu unserer Dog
Klasse hinzufügen:
public class Dog
{
// ... vorheriger Code ...
public Dog(string name, int age, string breed)
{
Name = name;
Age = age;
Breed = breed;
}
}
Jetzt können wir einen neuen Hund so erstellen:
Dog myDog = new Dog("Buddy", 3, "Labrador");
C# Destruktor
Destruktoren sind Methoden, die Ressourcen bereinigen, wenn ein Objekt nicht mehr benötigt wird. In C# werden sie selten verwendet, da der Müllsammler die Speicherverwaltung übernimmt. Aber für die Vollständigkeit hier ist, wie man einen definiert:
public class Dog
{
// ... vorheriger Code ...
~Dog()
{
Console.WriteLine("Auf Wiedersehen, " + Name + "!");
}
}
Dieser Destruktor wird aufgerufen, wenn das Hundobjekt vom Müllsammler zerstört wird.
Statische Mitglieder einer C# Klasse
Statische Mitglieder gehören zur Klasse selbst und nicht zu einem bestimmten Beispiel. Sie werden von allen Instanzen der Klasse geteilt. Lassen Sie uns ein statisches Mitglied hinzufügen, um zu verfolgen, wie viele Hunde wir erstellt haben:
public class Dog
{
// ... vorheriger Code ...
public static int DogCount = 0;
public Dog(string name, int age, string breed)
{
Name = name;
Age = age;
Breed = breed;
DogCount++;
}
public static void ReportDogCount()
{
Console.WriteLine("Gesamtzahl der Hunde: " + DogCount);
}
}
Jetzt wird DogCount
erhöht, jedes Mal wenn wir einen neuen Dog
erstellen. Wir können Dog.ReportDogCount()
jederzeit aufrufen, um zu sehen, wie viele Hunde wir erstellt haben.
Alles zusammenfügen
Lassen Sie uns unsere Dog
Klasse in einem Programm verwenden:
class Program
{
static void Main(string[] args)
{
Dog dog1 = new Dog("Buddy", 3, "Labrador");
Dog dog2 = new Dog("Max", 5, "Deutscher Schäferhund");
Console.WriteLine(dog1.Name + " ist ein " + dog1.Breed);
dog1.Bark();
Console.WriteLine(dog2.Name + " ist " + dog2.Age + " Jahre alt");
dog2.Bark();
Dog.ReportDogCount();
}
}
Dieses Programm erstellt zwei Hunde, zeigt deren Informationen an, lässt sie bellen und meldet die Gesamtzahl der erstellten Hunde.
Fazit
Glückwunsch! Sie haben gerade die Grundlagen der C# Klassen gelernt. Wir haben das Definieren von Klassen, Hinzufügen von Eigenschaften und Methoden, die Verwendung von Konstruktoren und Destruktoren sowie statische Mitglieder behandelt. Denken Sie daran, Übung macht den Meister, also probieren Sie selbst, Ihre eigenen Klassen zu erstellen und verschiedene Eigenschaften und Methoden auszuprobieren.
Hier ist eine Tabelle, die die Hauptmethoden zusammenfasst, die wir besprochen haben:
Methode | Beschreibung |
---|---|
Konstruktor | Initialisiert eine neue Instanz der Klasse |
Destruktor | Bereinigt Ressourcen, wenn das Objekt zerstört wird |
Bark() | Lässt den Hund bellen |
ReportDogCount() | Meldet die Gesamtzahl der erstellten Hunde |
Weiterschreiben und bald werden Sie komplexe Programme mit Leichtigkeit erstellen. Viel Erfolg beim Lernen!
Credits: Image by storyset