Sobes.tech
Junior

Jaka jest różnica między metodą statyczną a metodą instancji?

sobes.tech AI

Odpowiedź od AI

Metoda statyczna należy do klasy i może być wywoływana bez tworzenia jej instancji. Operuje na statycznych danych klasy. Metoda instancyjna należy do konkretnego obiektu (instancji klasy) i wymaga jej utworzenia do wywołania. Operuje na danych tego konkretnego obiektu.

Przykłady:

public static class Math  
{  
    // Metoda statyczna: należy do klasy Math
    public static int Add(int a, int b)  
    {  
        return a + b;  
    }  
}  

public class MyClass  
{  
    public int InstanceData { get; set; }  

    // Metoda instancyjna: należy do obiektu MyClass
    public void SetInstanceData(int data)  
    {  
        InstanceData = data;  
    }  
}  

// Użycie
// Wywołanie metody statycznej
int sum = Math.Add(2, 3);  

// Utworzenie instancji klasy do wywołania metody instancyjnej
MyClass obj = new MyClass();  
obj.SetInstanceData(10);