Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer Structmethoden | Structs & Enumerators
C# Verder dan de Basis

bookStructmethoden

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

index.cs

copy
123456789
struct structureName { // some fields here (optional) public returnType methodName(parameter1, parameter2, ...) { // code } }

Bijvoorbeeld:

index.cs

index.cs

copy
12345678910
struct 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

index.cs

copy
123456789101112131415161718192021222324252627282930
using 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

index.cs

copy
12345678910111213141516171819202122232425262728293031
using 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?

question mark

Welke is een geldig sleutelwoord voor het declareren van een methode?

Select the correct answer

question mark

Wat is de uitvoer van de volgende code?

Select the correct answer

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 2. Hoofdstuk 5

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

Awesome!

Completion rate improved to 2.04

bookStructmethoden

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

index.cs

copy
123456789
struct structureName { // some fields here (optional) public returnType methodName(parameter1, parameter2, ...) { // code } }

Bijvoorbeeld:

index.cs

index.cs

copy
12345678910
struct 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

index.cs

copy
123456789101112131415161718192021222324252627282930
using 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

index.cs

copy
12345678910111213141516171819202122232425262728293031
using 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?

question mark

Welke is een geldig sleutelwoord voor het declareren van een methode?

Select the correct answer

question mark

Wat is de uitvoer van de volgende code?

Select the correct answer

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 2. Hoofdstuk 5
some-alt