Sobes.tech
Junior — Middle

Wat is het verschil tussen de sleutelwoorden const en readonly in de programmeercontext, en in welke gevallen is het gebruik ervan de voorkeur?

sobes.tech AI

Antwoord van AI

In C# wordt het sleutelwoord const gebruikt om constanten te declareren waarvan de waarden bekend zijn tijdens de compilatie en niet kunnen worden gewijzigd tijdens de uitvoering. Deze waarden moeten primitief of literair zijn en onmiddellijk worden geïnitialiseerd.

readonly wordt toegepast op velden waarvan de waarde alleen kan worden ingesteld bij de declaratie of in de constructor van de klasse. Na initialisatie kan de waarde niet worden gewijzigd, maar kan tijdens de uitvoering worden berekend.

Wanneer gebruiken:

  • const — voor onveranderlijke waarden die bekend zijn tijdens de compilatie (bijvoorbeeld getallen, strings).
  • readonly — wanneer de waarde alleen bekend is tijdens de uitvoering, bijvoorbeeld afhankelijk van constructorparameters.

Voorbeeld:

public class Example {
    public const double Pi = 3.1415; // bekend tijdens compilatie
    public readonly DateTime CreatedAt;

    public Example() {
        CreatedAt = DateTime.Now; // initialisatie tijdens uitvoering
    }
}