Le classi interne static – Lezione 14 di Java Avanzato

Cosa sono le classi interne di tipo static

Una classe interna è static quando la sua dichiarazione è preceduta dal modificatore static. Si tratta di un tipo particolare di classe interna che può essere dichiarata nello scope della classe, ovvero al di fuori dei metodi e delle inizializzazioni. Altrimenti, se la classe è dichiarata in un metodo o nell’inizializzazione di un campo eredita il suo essere static dal metodo o campo in cui è contenuta.

Tutte le proprietà delle classi interne valgono anche per le classi static, a differenza che nelle classi interne static, non c’è alcun riferimento alla classe che la contiene. Il motivo di questa scelta è dovuto al fatto che una classe interna static potrebbe essere utilizzata prima della creazione della classe che la contiene (essendo static). Di conseguenza un riferimento alla classe esterna con la parola this comporta un errore di compilazione.

Avendo una classe interna static:

  public class A {
    public static class C extends A {
      //...
    }
  }

La classe C può essere istanziata senza che la classe A sia creata:

  A.C c = new A.C();

Indice Lezione PrecedenteLezione Successiva

Pubblicato in Guide, Java, Programmazione Taggato con: , ,

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

*