logo

Perché utilizziamo la classe statica in Java?

A Giava, statico è una parola chiave che può essere utilizzata con variabili, classi, blocchi e metodi. Quando utilizziamo la parola chiave static prima di ognuna di esse, significa che il membro specificato appartiene a un tipo stesso. In altre parole, un'istanza di un membro statico viene creata e condivisa tra tutte le istanze della classe.

In questa sezione utilizzeremo statico parola chiave con il Classe Java e anche capire perché usiamo una classe statica?

lungo da infilare

Classe statica Java

Possiamo dichiarare una classe statica utilizzando la parola chiave static. Una classe può essere dichiarata statica solo se è a classe annidata . Non richiede alcun riferimento alla classe esterna. La proprietà della classe statica è che non ci consente di accedere ai membri non statici della classe esterna.

Per comprendere il concetto di classe statica dobbiamo prima comprendere il concetto di interno, esterno, E nidificato classe.

Classe interiore

Vengono chiamate le classi non statiche e annidate classi interiori . Nota che non possiamo creare un'istanza della classe interna senza creare un'istanza della classe esterna. Senza utilizzare il riferimento all'istanza della classe esterna, un'istanza della classe interna può accedere ai membri della sua classe esterna. Rende il programma semplice e conciso.

Classe esterna

Viene chiamata la classe in cui è definita la classe annidata classe esterna .

mappe java

Classe nidificata

Giava ci permette di definire una classe all'interno di una classe conosciuta come a classe annidata . Può essere statico o non statico. La principale differenza tra la classe statica e quella non statica è che:

  • È possibile creare un'istanza della classe nidificata statica senza creare un'istanza della relativa classe esterna.
  • È possibile accedere ai membri statici e non statici di una classe esterna da una classe interna.
  • È possibile accedere ai membri statici della classe esterna solo dalla classe statica.

Ricordare

  • Tutte le classi statiche sono classi nidificate ma non è vero il contrario.
  • Può accedere solo ai membri statici della classe esterna.
  • Non è possibile accedere alle variabili non statiche e ai metodi di istanza all'interno della classe statica. Se provi ad accedere a un riferimento non statico da un campo statico, viene generato un errore: Impossibile creare un riferimento statico al campo non statico.
  • Possiamo creare blocchi statici, variabili e metodi all'interno di una classe statica.
  • Una classe può avere più classi statiche.
  • Non possiamo accedere alla classe statica se si trova all'interno del blocco statico.
  • Può esserci un numero qualsiasi di classi statiche all'interno di una classe statica.

Esempio di classe statica Java

JavaStaticClassExample.java

 public class JavaStaticClassExample { private static String s= 'Javatpoint'; //Static and nested class static class StaticNestedClass { //non-static method of the nested class public void show() { //prints the string defined in base class System.out.println(s); } } public static void main(String args[]) { JavaStaticClassExample.StaticNestedClass obj = new JavaStaticClassExample.StaticNestedClass(); //invoking the method of the nested class obj.show(); } } 

Produzione:

 Javatpoint 

Perché utilizziamo la classe statica in Java?

In Java, la parola chiave static viene utilizzata principalmente per la gestione della memoria. Possiamo usare la parola chiave static con variabili, metodi, blocchi e classi. L'uso della classe statica è un modo per raggruppare le classi insieme. Viene utilizzato anche per accedere al membro primitivo della classe che lo racchiude tramite il riferimento all'oggetto. Le classi statiche vengono caricate dal classloader al momento del primo utilizzo solo non quando viene caricata la classe che le racchiude.