Sobes.tech
Junior

Wat is method overload in C#?

sobes.tech AI

Antwoord van AI

Method Overloading in C# maakt het mogelijk om meerdere methoden in dezelfde klasse te definiëren met dezelfde naam, maar met verschillende handtekeningen.

Methodesignature omvat:

  • De naam van de methode.
  • Het aantal en de types van parameters in de parameterlijst.

Niet inbegrepen in de signature:

  • Het returntype.
  • Parametermodifiers (bijvoorbeeld ref, out).

Voorbeeld:

// Klasse met overloaded methoden
public class Calculator
{
    // Overload 1: Optellen van twee gehele getallen
    public int Add(int a, int b)
    {
        return a + b;
    }

    // Overload 2: Optellen van twee kommagetallen (andere parameter types)
    public double Add(double a, double b)
    {
        return a + b;
    }

    // Overload 3: Optellen van drie gehele getallen (ander aantal parameters)
    public int Add(int a, int b, int c)
    {
        return a + b + c;
    }

    // Dit is GEEN overload: alleen verschillend door returntype
    /*
    public double Add(int a, int b)
    {
        return (double)(a + b);
    }
    */
}

De compiler bepaalt welke methode wordt aangeroepen tijdens compilatie, op basis van de types en het aantal argumenten dat wordt doorgegeven bij de aanroep. Dit staat bekend als statische binding (Static Binding) of vroege binding (Early Binding).

Voordelen van method overloading:

  • Verbeterde leesbaarheid en gebruiksgemak van de code.
  • Het presenteren van vergelijkbare operaties onder één naam, maar voor verschillende datatypes of met verschillende invoerparameters.