Junior
Ποια είναι η διαφορά μεταξύ μιας στατικής μεθόδου και μιας μεθόδου στιγμιότυπου;
sobes.tech AI
Απάντηση από AI
Η στατική μέθοδος ανήκει στην κλάση και μπορεί να κληθεί χωρίς να δημιουργηθεί ένα στιγμιότυπο της κλάσης. Λειτουργεί με τα στατικά δεδομένα της κλάσης. Η μέθοδος στιγμής ανήκει σε ένα συγκεκριμένο αντικείμενο (στιγμιότυπο της κλάσης) και απαιτεί τη δημιουργία του για να κληθεί. Λειτουργεί με τα δεδομένα αυτού του συγκεκριμένου αντικειμένου.
Παραδείγματα:
public static class Math
{
// Στατική μέθοδος: ανήκει στην κλάση Math
public static int Add(int a, int b)
{
return a + b;
}
}
public class MyClass
{
public int InstanceData { get; set; }
// Μέθοδος στιγμής: ανήκει στο αντικείμενο MyClass
public void SetInstanceData(int data)
{
InstanceData = data;
}
}
// Χρήση
// Κλήση της στατικής μεθόδου
int sum = Math.Add(2, 3);
// Δημιουργία αντικειμένου της κλάσης για να καλέσετε τη μέθοδο στιγμής
MyClass obj = new MyClass();
obj.SetInstanceData(10);