Introduktion til klasser i C#

Klasser er de grundlæggende byggesten i objektorienteret programmering i C#. De tillader programmører at definere planen for at skabe objekter, som er forekomster af klassen. Klasser indkapsler data og adfærd i en enkelt enhed, hvilket giver en modulær og genbrugelig måde at organisere koden på.

Klassedefinition i C#

Klasserne er defineret på følgende måde:

// Define a class called 'Person'
class Person
{
    // Class variables (also known as fields)
    public string Name;
    public int Age;

    // Class method
    public void Greet()
    {
        Console.WriteLine($"Hello, my name is {Name} and I'm {Age} years old.");
    }
}

// Create objects of the 'Person' class
Person person1 = new Person();
person1.Name = "John";
person1.Age = 30;
person1.Greet();  // Output: Hello, my name is John and I'm 30 years old.

Person person2 = new Person();
person2.Name = "Jane";
person2.Age = 25;
person2.Greet();  // Output: Hello, my name is Jane and I'm 25 years old.
  • I koden ovenfor definerer vi en klasse kaldet 'Person', som har to offentlige klassevariable: 'Name' (af typen 'string') og 'Age' (af typen 'int'). Vi har også en offentlig metode kaldet 'Greet()', der udskriver en hilsen ved hjælp af variablerne 'Name' og 'Age'.
  • For at oprette objekter i klassen 'Person' bruger vi nøgleordet 'new' efterfulgt af klassenavnet ('Person'). Vi tildeler derefter værdier til variablerne 'Name' og 'Age' for hvert objekt. Til sidst kalder vi 'Greet()' metoden på hvert objekt for at vise hilsenen.
  • Klasser giver mulighed for at skabe flere forekomster (objekter) med deres egne unikke data, hvilket gør det muligt for en at oprette så mange objekter 'Person' som nødvendigt og få adgang til deres egenskaber og metoder uafhængigt.

Konklusion

Klasser danner grundlaget for at bygge komplekse applikationer med C# og tilbyder funktioner såsom konstruktører til objektinitialisering, egenskaber til kontrolleret adgang til klassemedlemmer og adgangsmodifikatorer til styring af synlighed. Ved at udnytte klasser effektivt er det muligt at skabe modulære, vedligeholdelige og skalerbare kodestrukturer.