Strukturmethoden
Eine Struktur kann neben Datenfeldern auch Methoden haben. In einer Struktur erstellen wir eine Methode ähnlich wie wir allgemein eine Methode erstellen:
index
123456789struct structureName { // some fields here (optional) public returnType methodName(parameter1, parameter2, ...) { // code } }
Zum Beispiel:
index
12345678910struct Player { public string name; public int score; public void displayScore() { Console.WriteLine($"{name} has {score} score"); } }
In der Player
-Struktur haben wir eine Methode namens displayScore
, die eine formatierte Ausgabemeldung enthält, die den name
und score
anzeigt. Es ist wichtig zu beachten, dass die Werte für name
und score
für jedes Objekt (Instanz) unterschiedlich sein werden, was bedeutet, dass die displayScore
-Methode für jedes Objekt eine andere Ausgabe anzeigen wird.
Wir können auf die Methode zugreifen und sie mit der Syntax variableName.methodName()
ausführen. Schauen wir uns an, wie wir die Player
-Struktur verwenden werden:
index
123456789101112131415161718192021222324252627282930using System; struct Player { public string name; public int score; public void displayScore() { Console.WriteLine($"{name} has {score} score"); } } class ConsoleApp { static void Main(string[] args) { Player player1 = new Player(); Player player2 = new Player(); player1.name = "SuperKillerPro"; player1.score = 100; player2.name = "Cyrex"; player2.score = 77; player1.displayScore(); player2.displayScore(); } }
Im Beispiel wurden zwei Objekte mit der Player
-Klasse erstellt und einige Daten wurden ihnen zugewiesen. Die Methode displayScore
wurde mit jedem Objekt aufgerufen und das Ergebnis war für jedes von ihnen unterschiedlich.
Wir können auch Methoden mit einigen Parametern haben. Lassen Sie uns eine neue Methode namens "addScore" hinzufügen, die die Punktzahl um einen bestimmten Betrag erhöht, und versuchen Sie, sie zu verwenden:
index
12345678910111213141516171819202122232425262728293031using System; struct Player { public string name; public int score; public void displayScore() { Console.WriteLine($"{name} has {score} score"); } public void addScore(int add) { score += add; } } class ConsoleApp { static void Main(string[] args) { Player player1 = new Player(); player1.name = "SuperKillerPro"; player1.score = 100; player1.displayScore(); player1.addScore(70); player1.displayScore(); } }
Sie können aus der Ausgabe sehen, dass die Methode die Punktzahl um 70
Punkte aktualisiert.
1. Welches ist ein gültiges Schlüsselwort zur Deklaration einer Methode?
2. Was wird die Ausgabe des folgenden Codes sein?
Danke für Ihr Feedback!
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen