In ambito statico... un sottoprogramma assomiglia alla sezione main
public static void main(String args[])
{
...
} public static tipo metodo(elenco parametri formali)
{
istruzioni
}
con
- metodo
- è il nome assegnato al sottoprogramma
- tipo
- rappresenta il tipo di dato dell'eventuale valore di ritorno (void altrimenti)
- elenco parametri formali
- facoltativo
- istruzioni
- facoltativo...
Chiamata
Per passare il controllo al metodo è necessario chiamarlo
metodo(elenco parametri attuali);
con
- elenco parametri attuali
- deve corrispondere in numero, posizione, tipo all'elenco parametri
formali
Ritorno
Il controllo ritorna al chiamante quando si giunge all'etichetta di fine del metodo (la parentesi graffa chiusa)
Chiamante |
Metodo |
...
aspetta0();
... |
public static void aspetta0()
{
int x;
do
{
...
}
while(x != 0);
} |
o se è richiesto esplicitamente dal codice con un'istruzione di ritorno, return
Chiamante |
Metodo |
...
aspetta0();
... |
public static void aspetta0()
{
int x;
do
{
...
if(x == 0)
return;
}
while(true);
} |
Se il tipo del metodo è diverso da void è necessario "utilizzare" il valore di ritorno
(assegnandolo, visualizzandolo, ...) e l'istruzione return è seguita da un'espressione il cui valore è dello stesso tipo
Chiamante |
Metodo |
...
System.out.println("Il valore è " + aspettaDiverso0());
...
int x=aspettaDiverso0();
... |
public static int aspettaDiverso0()
{
int x;
do
{
...
if(x != 0)
return x;
}
while(true);
} |
|