Sobes.tech
Junior

Na aké aplikácie je vhodný modifikátor static?

sobes.tech AI

Odpoveď od AI

  1. Premenné triedy (statické polia): Na ukladanie údajov spoločných pre všetky inštancie triedy. Napríklad počítadlo vytvorených objektov alebo konštanty.
  2. Metódy triedy (statické metódy): Na vykonávanie akcií, ktoré nezávisia od konkrétneho inštancie triedy. Napríklad pomocné funkcie alebo metódy na prácu so statickými poľami.
  3. Statické bloky inicializácie: Na vykonanie zložitých inicializácií statických polí pri načítaní triedy.
  4. Statické vnútorné triedy: Na logické zoskupovanie súvisiacich tried alebo na použitie ako pomocné triedy bez odkazu na vonkajší objekt.

Príklady:

public class MyClass {
    // Statické pole (konštanta)
    public static final int MAX_COUNT = 100;

    // Statické pole (čítač inštancií)
    private static int instanceCount = 0;

    // Statický blok inicializácie
    static {
        System.out.println("MyClass načítaná.");
    }

    public MyClass() {
        instanceCount++;
    }

    // Statická metóda
    public static int getInstanceCount() {
        return instanceCount;
    }

    // Statická vnútorná trieda
    public static class StaticInnerClass {
        public void doSomething() {
            System.out.println("V statickej vnútornej triede.");
        }
    }
}

Porovnávacia tabuľka statických a nestatických členov:

Vlastnosť Statický člen Nestatický člen
Vzťah k objektu Patrí triede Patrí inštancii
Prístup Prostredníctvom názvu triedy alebo objektu Prostredníctvom objektu
Inicializácia Pri načítaní triedy Pri vytvorení objektu
Pamäť Pridelená raz Pridelená pre každý objekt