Structmethoden
Een structuur kan naast gegevensvelden ook methoden bevatten. In een struct maak je een methode op dezelfde manier als je in het algemeen een methode maakt:
index.cs
123456789struct structureName { // some fields here (optional) public returnType methodName(parameter1, parameter2, ...) { // code } }
Bijvoorbeeld:
index.cs
12345678910struct Player { public string name; public int score; public void displayScore() { Console.WriteLine($"{name} has {score} score"); } }
In de Player
-structuur bevindt zich een methode genaamd displayScore
die een geformatteerd uitvoerbericht toont met de name
en score
. Het is belangrijk om op te merken dat de waarden van name
en score
verschillend zijn voor elk object (instantie), wat betekent dat de displayScore
-methode een andere uitvoer zal tonen voor elk object.
De methode kan worden benaderd en uitgevoerd met de syntaxis variableName.methodName()
. Bekijk hoe de Player
-structuur wordt gebruikt:
index.cs
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(); } }
In het voorbeeld zijn twee objecten aangemaakt met behulp van de Player
-klasse en is er wat data aan toegewezen. De methode displayScore
is aangeroepen via elk object en de uitvoer bleek voor ieder van hen verschillend te zijn.
Het is ook mogelijk om methoden met parameters te hebben. Laten we een nieuwe methode toevoegen, genaamd addScore
, die de score met een opgegeven hoeveelheid verhoogt en deze gebruiken:
index.cs
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(); } }
Uit de uitvoer blijkt dat de methode de score met 70
punten bijwerkt.
1. Welke is een geldig sleutelwoord voor het declareren van een methode?
2. Wat is de uitvoer van de volgende code?
Bedankt voor je feedback!
Vraag AI
Vraag AI
Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.
Awesome!
Completion rate improved to 2.04
Structmethoden
Veeg om het menu te tonen
Een structuur kan naast gegevensvelden ook methoden bevatten. In een struct maak je een methode op dezelfde manier als je in het algemeen een methode maakt:
index.cs
123456789struct structureName { // some fields here (optional) public returnType methodName(parameter1, parameter2, ...) { // code } }
Bijvoorbeeld:
index.cs
12345678910struct Player { public string name; public int score; public void displayScore() { Console.WriteLine($"{name} has {score} score"); } }
In de Player
-structuur bevindt zich een methode genaamd displayScore
die een geformatteerd uitvoerbericht toont met de name
en score
. Het is belangrijk om op te merken dat de waarden van name
en score
verschillend zijn voor elk object (instantie), wat betekent dat de displayScore
-methode een andere uitvoer zal tonen voor elk object.
De methode kan worden benaderd en uitgevoerd met de syntaxis variableName.methodName()
. Bekijk hoe de Player
-structuur wordt gebruikt:
index.cs
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(); } }
In het voorbeeld zijn twee objecten aangemaakt met behulp van de Player
-klasse en is er wat data aan toegewezen. De methode displayScore
is aangeroepen via elk object en de uitvoer bleek voor ieder van hen verschillend te zijn.
Het is ook mogelijk om methoden met parameters te hebben. Laten we een nieuwe methode toevoegen, genaamd addScore
, die de score met een opgegeven hoeveelheid verhoogt en deze gebruiken:
index.cs
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(); } }
Uit de uitvoer blijkt dat de methode de score met 70
punten bijwerkt.
1. Welke is een geldig sleutelwoord voor het declareren van een methode?
2. Wat is de uitvoer van de volgende code?
Bedankt voor je feedback!