Sobes.tech
Junior

Kāda ir atšķirība starp statisko metodi un metodi objekta?

sobes.tech AI

Atbilde no AI

Statiskā metode pieder klasei un tiek izsaukta bez objekta. Objekta metode pieder klases objekts un tiek izsaukta caur izveidoto objekta.

Galvenās atšķirības:

Kritērijs Statiskā metode Objekta metode
Piederība Klasei Klases objektam
Izsaukšana Caur klases nosaukumu Caur objekta instance
Pieeja datiem Tikai pie statiskajiem locekļiem Pie statiskajiem locekļiem un objekta datiem
Atslēgvārds static Nav (pēc noklusējuma)
using System;

public class MyClass
{
    // Statiskais lauks
    public static string StaticData = "Tas ir statiskais datums";

    // Objekta lauks
    public string InstanceData = "Tas ir objekta datums";

    // Statiskais metodes
    public static void StaticMethod()
    {
        Console.WriteLine("Statiskā metode izsaukta.");
        Console.WriteLine(StaticData); // Pieeja pie statiskā lauka
        // Console.WriteLine(InstanceData); // Kļūda: pieeja pie objekta lauka nav iespējama
    }

    // Objekta metode
    public void InstanceMethod()
    {
        Console.WriteLine("Objekta metode izsaukta.");
        Console.WriteLine(StaticData); // Pieeja pie statiskā lauka
        Console.WriteLine(InstanceData); // Pieeja pie objekta lauka
    }
}

public class Program
{
    public static void Main(string[] args)
    {
        // Statiskās metodes izsaukšana caur klases nosaukumu
        MyClass.StaticMethod();

        // Objekta izveide
        MyClass myObject = new MyClass();

        // Objekta metodes izsaukšana caur objektu
        myObject.InstanceMethod();
    }
}