  |
equivalgono alle funzioni |
  |
basta il nome della classe per accedere al metodo |
int n = Integer.parseInt("123");
Abbiamo visto che per usare un metodo che serve sempre una istanza. Questo può essere una limitazione perché alcune procedure sono funzioni: prendono un input e producono un output, senza che debba essere memorizzato uno stato. È fastidioso dover creare ogni volta una istanza. Per fortuna è possibile dichiarare un metodo in modo che non richieda una istanza per essere utilizzata: si tratta dei metodi statici. Come i campi statici, possono essere invocati solamente utilizzando il nome della classe, senza che occorra avere alcuna istanza. Nel listato possiamo notare il metodo parseInt, che serve a trasformare una stringa in un numero intero, e che possiamo invocare semplicemente specificando il nome della classe. Per motivi se vogliamo "organizzativi", i metodi statici devono stare comunque in una classe, ma per utilizzarli basta il loro nome preceduto dal nome della classe. In realtà il metodi statici hanno qualcosa in meno rispetto ai metodi non statici: non possono accedere campi non statici e quindi hanno una minore capacità. Tuttavia sono utili e molto utilizzati.
  |
main è un metodo static |
public static
void main(String[] args)
{ ... }
Il metodo di avvio di una classe è appunto statico. Infatti l'interprete Java inizia il suo lavoro a partire da un nome di classe: la carica, ma non ne crea alcuna istanza. Per questo motivo l'esecuzione parte da un metodo statico, che deve chiamarsi main, non deve ritornare nulla, e prendere un array di stringhe come argomento.
|