Sobes.tech
Middle

Mi az a helyi osztály, és mik a jellemzői?

sobes.tech MI

Válasz az MI-től

Helyi osztály egy olyan osztály, amely egy blokk, például egy metódus, konstruktor vagy inicializáló belsejében van meghatározva.

A helyi osztályok jellemzői:

  • Hatókör: Csak abban a blokkban érhető el, ahol meghatározták.
  • Nem statikus: Nem deklarálható static-ként.
  • Hozzáférés helyi változókhoz: Hozzáférhet a környező blokk final vagy hatékonyan final helyi változóihoz és paramétereihez.
  • Nem lehet hozzáférési módosító: public, private, protected nem használható.
  • Öröklődik osztályoktól és megvalósít interfészeket: Bővíthet más osztályokat és megvalósíthat interfészeket.
  • Névadás: Nem tartalmazhatja a strictfp módosítót, és nem lehet enum.

Példa:

class Outer {
    void myMethod() {
        int localVar = 10; // hatékonyan végleges

        class LocalClass {
            void display() {
                System.out.println("Helyi változó: " + localVar);
            }
        }

        LocalClass local = new LocalClass();
        local.display();
    }

    public static void main(String[] args) {
        Outer outer = new Outer();
        outer.myMethod();
    }
}