Sobes.tech
Junior — Middle

Wie unterscheidet man eine statische Methode von einer Methode, die an einem bestimmten Objekt der Klasse aufgerufen wird?

sobes.tech KI

Antwort von AI

In C# wird eine statische Methode mit dem Schlüsselwort static definiert und auf der Klasse selbst aufgerufen, nicht auf einer Instanz des Objekts.

Unterschiede:

  • Statische Methode:

    • Wird mit static deklariert.
    • Hat keinen Zugriff auf nicht-statische Felder und Methoden der Klasse.
    • Wird über den Klassennamen aufgerufen: KlassenName.Methode().
  • Instanzmethode:

    • Hat kein static.
    • Wird auf einem konkreten Objekt aufgerufen: obj.Methode().

Beispiel:

class MeineKlasse
{
    public static void StatischeMethode()
    {
        Console.WriteLine("Statische Methode");
    }

    public void InstanzMethode()
    {
        Console.WriteLine("Instanzmethode");
    }
}

// Aufrufe
MeineKlasse.StatischeMethode(); // Aufruf der statischen Methode

MeineKlasse obj = new MeineKlasse();
obj.InstanzMethode(); // Aufruf der Methode auf einem Objekt

Der Unterschied liegt also im Aufruf und im Vorhandensein des Schlüsselworts static.