Java/Metodi: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica
Riga 86:
public static void main(String [] Args){
Frase B= new fraseFrase();
B.faifrase();
}
 
}
</source>
Line 95 ⟶ 97:
I parametri possono esserci oppure no.
 
I metodi possono restituire un valore particolare al chiamante oppure no. Quando si vuole restituire un valore il chiamante diverrà tale valore. La restituzione di un valore si ha con l'enunciato "'''return'''" ed il '''tipo del valore restituito indicato''' prima del nome del metodo. Se non si vuole restituire un valore o un dato particolare allora non occorre return e prima del nome del metodo c'è bisogno dell'enunciato "'''void'''". Quindi, prima del nome del metodo, ci deve deve essere <u> o il "void" o il tipo del valore ( con all'interno del corpo la clausola "return")</u>.valor
 
Il metodo faifrase che abbiamo su non restituisce un valore particolare questo invece si:
 
<source lang=java>
 
public int dividinumeri(int dividendo, int divisore){
 
int prodotto= dividendo/divisore;
return prodotto;
 
}
</source>
 
In questo caso il metodo chiamante "dividinumeri(10,2)" diventa un intero (precisamente l'intero che è stato prodotto dalla divisione), e si potrebbe usare anche come tale, ovvero come un "5".
 
== Parametri ==
Nella scrittura di un metodo i parametri sono importanti e fanno parte della "firma del metodo o "signature", sia che ci siano e sia che non ci siano. Questi parametri sono consideratri dalla JVM secondo il tipo, la posizione ed il numero degli stessi. I parameteri si inseriscono all'interno delle parentesi tonde, dopo il nome del metodo, in maniera analoga alla dichiarazione dei tipi primitivi e/o astratti. In quest'esempio:
(int num, String nome, boolean on, Nomedellaclasse B)
ci sono quattro parametri di un metodo, il quale nel suo corpo ne farà uso istanziandoli con valori reali del chiamante.
Nella implementazione di un metodo si usano '''parametri formali''' mentre nell'uso, nella chiamata di questo, si adoperano '''parametri attuali''' ( valori). All'atto della chiamata di un metodo i parametri sono inizializzati per valore, mentre prima erano usati solo riferimenti (dichiarazioni).
 
Un esempio semplice di scrittura o implementazione di un metodo e i suoi parametri:
<source lang=java>
 
public void faifrase(String soggetto, String verbo, String complemento){
 
System.out.println(soggetto + verbo + complemento);
 
}
 
</source>
 
il metodo codificato sopra lo useremo, lo chiameremo, in quetso modo:
 
<source lang=java>
faifrase("lui ","fa "," qualcosa");
</source>
il metodo stamperà a video la frase ottenuta con le parole passate dal chimante: "lui fa qualcosa".
 
Altro esempio:
 
<source lang=java>
 
public int dividinumeri(int dividendo, int divisore){
 
int prodotto= dividendo/divisore;
return prodotto;
 
}
</source>
il chiamante sarà questo:
<source lang=java>
dividinumeri(10,2);
</source>
ed otterremo 5.
 
Il chiamante per fare affidamento esattamente sul suo codice descritto, e magari non un altro, deve avere la lista esatta dei parametri per tipo, posizione e numero, questo farà in modo di usare esattamente il suo metodo omonimo e non un altro.
 
Non è possibile chiamare il metodo dividinumeri così:
dividinumeri(10,2,3):
oppure
dividinumeri(1,2,3);
i parametri sono tre e il metodo scritto ne vuole solo due.
 
Oppure non è possibile
faifrase ('l', "fa", "qualcosa")
il metodo vuole tre stringhe non un char e due stringhe.
 
Il tipo, la posizione, ed il numero, dei parametri, tra il chiamante ed il metodo scritto, devono corrispondere, sempre.
 
== Il metodo "main()" ==
 
Il metodo main, è un metodo speciale, è per default il metodo di partenza delle applicazioni java. Per eseguire una applicazione l'interprete ha bisogno del metodo “main” ossia del metodo “principale”, è concettualmente una sorta di inizio o di boot o di indice di una applicazione. Abbiamo bisogno del main quando dobbiamo far partire in esecuzione una applicazione. La JVM, di default, al comando di esecuzione della classe, chiamerà il metodo "main()" ed eseguirà il suo contenuto.
 
Il metodo "main()":
<source lang=java>
public static void main (string arg[]){
Istruzioni di inizio applicazione: chiamata a oggetti e metodi ...;
}
</source>
 
il metodo "main()" è un metodo di classe perchè statico: non vi è bisogno di istanziare un oggetto per usarlo, appartiene alla classe. Tutti i metodi statici o di classe si usano con la sintassi
classe.nomemetodo();
 
'''I metodi statici''' si implementano scrivendo la parola chiave "static" prima del nome e del tipo restituito.
 
Finora abbiamo visto che normalmente i metodi si usano con un oggetto istanziato dalla classe con questa sintassi
nomeoggetto.nomemetodo();
 
I metodi sono statici, ovvero di classe, quando il loro uso è frequentissimo e/o non ha senso usare oggetti in quanto la loro azione è generalmente la stessa in tutte le circostanze.
 
Vediamo altre particolarità del "main()".
 
Il "main" ha il suffisso "void" dunque non restituisce un valore specifico.
 
IL "main" ha come parametro un array di stringhe. Questo array serve a condizionare l'esecuzione del programma in maniera opzionale, secondo le opzioni che diamo, potremmo fare in modo che il programma si comporti di conseguenza. Le opzioni in effetti vengono memorizzate nell'array di stringhe del "main". Le opzioni si danno dopo il nome della classe da eseguire con questa sintassi
java nomedellaclasse opzione1 opzione2 ...
in questo caso "opzione1" e "opzione2" saranno nell'array che se sviluppato nel corpo del "main" ci porterà a condizionare il programma.
 
== La firma del metodo ==
 
 
 
== Costruttori ==
 
 
 
== Overloading e Overriding ==
 
 
 
== This e Super ==
 
 
 
[[Categoria:Java|Metodi]]
{{Avanzamento|25%|3 giugno 2008}}