Sobes.tech
Junior

Static modifikator hansı tətbiqlərə uyğundur?

sobes.tech Süni İntellekt

AI-dan cavab

  1. Sinif dəyişənləri (statik sahələr): Sinifin bütün nümunələri üçün ümumi olan məlumatları saxlamaq üçün. Məsələn, yaradılmış obyektlərin sayını və ya sabitləri.
  2. Sinif metodları (statik metodlar): Müəyyən sinif nümunəsindən asılı olmayan əməliyyatları yerinə yetirmək üçün. Məsələn, köməkçi funksiyalar və ya statik sahələrlə işləmək üçün metodlar.
  3. Statik başlanğıc blokları: Sinif yükləndikdə mürəkkəb statik sahələrin başlanğıcını həyata keçirmək üçün.
  4. Statik daxili siniflər: Əlaqəli sinifləri məntiqi cəhətdən qruplaşdırmaq və ya xarici obyektə istinad etmədən köməkçi siniflər kimi istifadə etmək üçün.

Nümunələr:

public class MyClass {
    // Statik sahə (sabit)
    public static final int MAX_COUNT = 100;

    // Statik sahə (nümunə sayı)
    private static int instanceCount = 0;

    // Statik başlanğıc bloku
    static {
        System.out.println("MyClass yükləndi.");
    }

    public MyClass() {
        instanceCount++;
    }

    // Statik metod
    public static int getInstanceCount() {
        return instanceCount;
    }

    // Statik daxili sinif
    public static class StaticInnerClass {
        public void doSomething() {
            System.out.println("Statik daxili sinifdə.");
        }
    }
}

Statik və qeyri-statik üzvlərin müqayisə cədvəli:

Xüsusiyyət Statik üzv Qeyri-statik üzv
Ob'ektlə əlaqəsi Sinifə aiddir Nümunəyə aiddir
Giriş Sinif adı və ya obyekt vasitəsilə Obyekt vasitəsilə
Başlanğıc Sinif yükləndikdə Obyekt yaradıldıqda
Yaddaş Bir dəfə ayrılır Hər obyekt üçün ayrılır