Sobes.tech
Junior

Care este diferența dintre o metodă statică și o metodă de instanță?

sobes.tech AI

Răspuns de la AI

Metoda statică aparține clasei și poate fi apelată fără a crea o instanță a clasei. Ea operează asupra datelor statice ale clasei. Metoda de instanță aparține unui obiect specific (instanța clasei) și necesită crearea acesteia pentru a fi apelată. Ea operează asupra datelor acestei instanțe specifice.

Exemple:

public static class Math  
{  
    // Metodă statică: aparține clasei Math
    public static int Add(int a, int b)  
    {  
        return a + b;  
    }  
}  

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

    // Metodă de instanță: aparține obiectului MyClass
    public void SetInstanceData(int data)  
    {  
        InstanceData = data;  
    }  
}  

// Utilizare
// Apelarea metodei statice
int sum = Math.Add(2, 3);  

// Crearea unei instanțe a clasei pentru a apela metoda de instanță
MyClass obj = new MyClass();  
obj.SetInstanceData(10);