I metodi statici in Java

      Nessun commento su I metodi statici in Java

java-logo

Finora abbiamo mostrato frammenti  di codice dando per scontato che siano parte di un processo attivo: in tutto questo c’è una falla. Se un metodo viene chiamato senza che l’oggetto di cui è membro sia attivo, quest’ultimo non sarebbe inizializzato. Il problema quindi è che in questo scenario un metodo per essere eseguito richiede un oggetto attivo, ma fino a che non c’è qualcosa in esecuzione un oggetto non può essere istanziato.  L’unica possibile soluzione è quindi quella di creare metodi speciali che non richiedano l’attività da parte dell’oggetto di cui sono membri, così che possano essere utilizzati in qualsiasi momento. La risposta a questo problema è nei metodi statici, ossia metodi che appartengono a classi, ma non richiedono oggetti attivi. Questi metodi possono essere creati utilizzando la parola chiave static a sinistra della dichiarazione di un metodo.

Esempio

public class TestIn {

public static void metodoStatico() {
System.out.println(“Sono il metodo statico”);
}

public void metodoNormale() {
System.out.println(“Sono un metodo normale”);
}

public static void main(String[] args) {
TestIn.metodoStatico();
TestIn.metodoNormale();//da errore
}

}

La prima istruzione verrà eseguita normalmente(TestIn.metodoStatico();) poiché non richiede  che l’oggetto sia insaziato, mentre la seconda istruzione non potrà essere eseguita in quanto richiama un metodo non statico e quindi richiede prima che venga i stanziato l’oggetto.-