Metodi
Cosa e un metodo
Sezione intitolata “Cosa e un metodo”Un metodo e un blocco di codice con un nome.
Lo scrivi una volta e puoi richiamarlo quando serve.
Pensa a un metodo come a una piccola ricetta: invece di riscrivere ogni passaggio, dai un nome all’azione.
Un primo metodo
Sezione intitolata “Un primo metodo”public class Saluti { public static void saluta() { System.out.println("Ciao!"); }
public static void main(String[] args) { saluta(); saluta(); }}Output:
Ciao!Ciao!Il metodo saluta viene definito una volta e chiamato due volte.
Definire e chiamare
Sezione intitolata “Definire e chiamare”Questa parte definisce il metodo:
public static void saluta() { System.out.println("Ciao!");}Questa parte lo chiama:
saluta();Definire un metodo non lo esegue automaticamente. Viene eseguito quando lo chiami.
Perche usare metodi
Sezione intitolata “Perche usare metodi”I metodi aiutano a:
- evitare ripetizioni
- dare un nome a un’azione
- dividere un programma in pezzi piu piccoli
- rendere il codice piu facile da leggere
Senza metodo:
System.out.println("----------");System.out.println("Prodotti");System.out.println("----------");System.out.println("Totale");System.out.println("----------");Con metodo:
public static void separatore() { System.out.println("----------");}Poi:
separatore();System.out.println("Prodotti");separatore();System.out.println("Totale");separatore();Metodi statici nei primi programmi
Sezione intitolata “Metodi statici nei primi programmi”Nei primi esempi useremo spesso:
public static void nomeMetodo()static permette di chiamare il metodo direttamente da main, senza creare oggetti.
Piu avanti, nella programmazione a oggetti, vedremo metodi legati agli oggetti.
Nomi chiari
Sezione intitolata “Nomi chiari”Il nome del metodo dovrebbe dire cosa fa.
public static void stampaTitolo() { System.out.println("Lista della spesa");}stampaTitolo e piu chiaro di faiCosa.
In Java i metodi usano di solito il camelCase:
calcolaTotale()mostraMessaggio()leggiPrezzo()Esempio completo
Sezione intitolata “Esempio completo”public class Scontrino { public static void stampaSeparatore() { System.out.println("----------"); }
public static void main(String[] args) { stampaSeparatore(); System.out.println("Pane"); System.out.println("Latte"); stampaSeparatore(); System.out.println("Totale: 3.20 euro"); stampaSeparatore(); }}Un metodo non deve fare tutto. Di solito e meglio che abbia un compito preciso e piccolo.