TOC

This article has been localized into Dutch by the community.

Klassen:

Methods (functies)

Terwijl properties en velden (fields) de passieve onderdelen zijn van een class, zijn methods daarvan de actieve onderdelen. Ze zullen één of meer acties uitvoeren en optioneel een resultaat retourneren. In andere programmeertalen worden ze vaak functies (functions) genoemd of zelfs alleen maar "funcs", maar in C#, waar ze bij een class horen, worden ze methods genoemd. Methods zijn erg nuttig omdat ze je in staat stellen een stuk functionaliteit in te kapselen in een method, die je daarna vanuit allerlei plaatsen kan oproepen.

Een method wordt op deze manier gedefinieerd:

<visibility> <return type> <name>(<parameters>)
{
    <method code>
}

Hier is een erg basaal voorbeeld:

public int AddNumbers(int number1, int number2)
{
	return number1 + number2;
}

Deze zeer basale method doet een optelling van twee getallen en retourneert het resultaat. laten we de verschillende onderdelen ervan onder de loep nemen:

  • public is de zichtbaarheid (meer hierover later in dit tutorial)
  • int is het "return" type variabele. Als je wilt dat je method niets retourneert, gebruik dan het void sleutelwoord in plaats daarvan
  • AddNumbers is de naam van de method
  • (int number1, int number2). Dit zijn de parameters (meer hierover later). Parameters zijn optioneel, dus mag je de ruimte tussen de haakjes leeg laten. De haakjes zelf zijn echter NIET optioneel.
  • Binnen de method (tussen de accolades) staat de echte code van de method. Er kunnen één of meerdere regels van code zijn.

Om een method aan te roepen hoef je alleen maar zijn naam in te toetsen, gevolgd door een paar haakjes. Binnen deze haakjes () komen dan de parameters (als de method die vereist), zoals hier:

AddNumbers(3, 39);

Hoewel methoden gedefinieerd zijn voor klassen, zou u mogelijks een methode willen oproepen voor een andere klasse dan diegene waarin u zich bevindt. in dat geval moet u de methode call prefixen met de naam van het object, of in geval van een statische methode (meer hierover later), de naam van de klasse. Hier volgt een voorbeeld waarin we de AddNumbers() methode oproepen, welke geplaatst was in een andere klasse, zijnde MathHelper:

public void DoMath()
{
	MathHelper mathHelper = new MathHelper();
	int result = mathHelper.AddNumbers(4, 38);
	Console.WriteLine(result);
}	

Types geretourneerd door methodes

Laten we het hebben over types van variabelen die door een applicatie worden geretourneerd. In bovenstaande voorbeelden definieerden we een method met een integer als het weer te geven type van variabele. Maar het staat je vrij om elk ander type van variabele te retourneren. Je kunt zelfs een method declareren die niets retourneert zoals we zagen met onze DoMath() method van boven. Merk op dat ik int heb vervangen door het void keyword. Dat betekent dat deze method niet verwacht wordt iets te retourneren. In sommige programmeertalen worden functies die niets retourneren procedures genoemd, maar bij C# heten ze altijd methods.

Je moet weten dat als je een return variabele declareert voor een method, je IETS moet retourneren, anders zal de compiler onmiddellijk protesteren:

public int AddNumbers(int number1, int number2)
{
	Console.WriteLine(number1 + number2);
}
Compiler error: AddNumbers(int, int)': not all code paths return a value

Dit betekent dat je een (of meer) return keywords nodig hebt binnen uw methode wanneer ze als een return type gedefinieerd is. Je kunt er meerdere nodig hebben in situaties waarin meerdere path codes mogelijk zijn, zoals:

public int AddLargeNumbers(int number1, int number2)
{			
	if((number1 > 1000) && (number2 > 1000))
	{
		return number1 + number2;
	}
	return 0;
}

In dit geval hebben we evenzeer het tweede return statement nodig - bij afwezigheid ervan zal de compiler protesteren omdat de geformuleerde voorwaarde kan verhinderen dat het eerste return statement geactiveerd wordt.

Samenvatting

Methodes maken het mogelijk om functionaliteiten van verschillende locaties te isoleren en te hergebruiken. Door verschillende parameters toe te kennen aan een methode, kan je verschillende resultaten bekomen. We hebben enkele parameters gebruikt in de voorbeelden hierboven, maar in het volgende artikel zullen we dieper ingaan op de parameters van methoden.


This article has been fully translated into the following languages: Is your preferred language not on the list? Click here to help us translate this article into your language!