Un metodo Java è una raccolta di istruzioni raggruppate per eseguire un’operazione. Quando si chiama il sistema.fuori.metodo println (), ad esempio, il sistema esegue effettivamente diverse istruzioni per visualizzare un messaggio sulla console.,
Ora imparerai come creare i tuoi metodi con o senza valori di ritorno, invocare un metodo con o senza parametri e applicare l’astrazione del metodo nella progettazione del programma.,
Creazione del Metodo
Considerare il seguente esempio per spiegare la sintassi di un metodo −
la Sintassi
public static int methodName(int a, int b) { // body}
Qui
-
public static − modificatore
-
int − tipo di ritorno
-
methodName − nome del metodo
-
a, b − parametri formali
-
int a, int b − elenco dei parametri
definizione del Metodo consiste in un metodo di intestazione e il corpo di un metodo., Lo stesso è mostrato nella seguente sintassi −
Sintassi
modifier returnType nameOfMethod (Parameter List) { // method body}
La sintassi mostrata sopra include −
-
modificatore-Definisce il tipo di accesso del metodo ed è opzionale da usare.
-
returnType − Metodo può restituire un valore.
-
nameOfMethod-Questo è il nome del metodo. La firma del metodo è costituita dal nome del metodo e dall’elenco dei parametri.
-
Elenco parametri-L’elenco dei parametri, è il tipo, l’ordine e il numero di parametri di un metodo. Questi sono facoltativi, il metodo può contenere parametri zero.,
-
corpo del metodo − Il corpo del metodo definisce ciò che il metodo fa con le istruzioni.
Esempio
Ecco il codice sorgente del metodo sopra definito chiamato min(). Questo metodo prende due parametri num1 e num2 e restituisce il massimo tra i due –
Chiamata al metodo
Per l’utilizzo di un metodo, dovrebbe essere chiamato. Esistono due modi in cui viene chiamato un metodo, ovvero il metodo restituisce un valore o non restituisce nulla (nessun valore restituito).
Il processo di chiamata al metodo è semplice., Quando un programma richiama un metodo, il controllo del programma viene trasferito al metodo chiamato. Questo metodo chiamato restituisce quindi il controllo al chiamante in due condizioni, quando –
- viene eseguita l’istruzione return.
- raggiunge il metodo che termina la parentesi graffa di chiusura.
I metodi che restituiscono void sono considerati come chiamate a un’istruzione., Consideriamo un esempio −
System.out.println("This is tutorialspoint.com!");
Il metodo di restituzione di valore può essere compreso dal seguente esempio −
int result = sum(6, 9);
di Seguito è un esempio per dimostrare come definire un metodo e come chiamarlo −
Esempio
Questo produrrà il seguente risultato −
Output
Minimum value = 6
void
void ci permette di creare metodi che non restituiscono un valore. Qui, nel seguente esempio stiamo considerando un metodo void methodRankPoints., Questo metodo è un metodo void, che non restituisce alcun valore. La chiamata a un metodo void deve essere un’istruzione cioè methodRankPoints(255.7);. È un’istruzione Java che termina con un punto e virgola come mostrato nell’esempio seguente.
Esempio
Questo produrrà il seguente risultato −
Output
Rank:A1
Passando i parametri per valore
Mentre si lavora sotto processo di chiamata, gli argomenti devono essere passati. Questi dovrebbero essere nello stesso ordine dei rispettivi parametri nella specifica del metodo. I parametri possono essere passati per valore o per riferimento.,
Passare i parametri per valore significa chiamare un metodo con un parametro. Attraverso questo, il valore dell’argomento viene passato al parametro.
Esempio
Il seguente programma mostra un esempio di passaggio del parametro per valore. I valori degli argomenti rimangono gli stessi anche dopo l’invocazione del metodo.
Questo produrrà il seguente risultato −
Output
Overloading del metodo
Quando una classe ha due o più metodi con lo stesso nome ma parametri diversi, è noto come overloading del metodo. È diverso dall’override., Nell’override, un metodo ha lo stesso nome, tipo, numero di parametri, ecc.
Consideriamo l’esempio discusso in precedenza per trovare numeri minimi di tipo intero. Se, diciamo che vogliamo trovare il numero minimo di doppio tipo. Quindi verrà introdotto il concetto di sovraccarico per creare due o più metodi con lo stesso nome ma parametri diversi.
Il seguente esempio spiega lo stesso −
Esempio
Questo produrrà il seguente risultato −
Output
Minimum Value = 6Minimum Value = 7.3
I metodi di sovraccarico rendono il programma leggibile., Qui, due metodi sono dati con lo stesso nome ma con parametri diversi. Il numero minimo dai tipi integer e double è il risultato.
Usando gli argomenti della riga di comando
A volte vorrai passare alcune informazioni in un programma quando lo esegui. Ciò si ottiene passando argomenti della riga di comando a main ().
Un argomento della riga di comando è l’informazione che segue direttamente il nome del programma sulla riga di comando quando viene eseguito. Per accedere agli argomenti della riga di comando all’interno di un programma Java è abbastanza facile., Sono memorizzati come stringhe nell’array di stringhe passato a main ().
Esempio
Il programma riportato di seguito consente di visualizzare tutti gli argomenti della riga di comando che viene chiamato con −
public class CommandLine { public static void main(String args) { for(int i = 0; i<args.length; i++) { System.out.println("args: " + args); } }}
Provare a eseguire questo programma, come mostrato in figura)
$java CommandLine this is a command line 200 -100
Questo produrrà il seguente risultato −
Uscita
args: thisargs: isargs: aargs: commandargs: lineargs: 200args: -100
La parola chiave this
questa è una parola chiave in Java, ed è usato come un riferimento a un oggetto della classe corrente, con un metodo di istanza o di un costruttore., Usando questo è possibile fare riferimento ai membri di una classe come costruttori, variabili e metodi.
Nota − La parola chiave this è usata solo all’interno di metodi o costruttori di istanze
In generale, la parola chiave this è usata per −
-
Differenziare le variabili di istanza dalle variabili locali se hanno lo stesso nome, all’interno di un costruttore o di un metodo.
class Student { int age; Student(int age) { this.age = age; }}
-
Chiama un tipo di costruttore (costruttore parametrizzato o predefinito) da un altro in una classe. È noto come invocazione esplicita del costruttore.,
class Student { int age Student() { this(20); } Student(int age) { this.age = age; }}
Esempio
Ecco un esempio che utilizza questa parola chiave per accedere ai membri di una classe. Copia e incolla il seguente programma in un file con il nome, This_Example.Java.
Questo produrrà il seguente risultato −
Output
This is an example program on keyword this value of local variable num is : 20value of instance variable num is : 10Hi Welcome to TutorialspointThis is an example program on keyword this value of local variable num is : 20value of instance variable num is : 30Hi Welcome to Tutorialspoint
Argomenti variabili(var-args)
JDK 1.5 consente di passare un numero variabile di argomenti dello stesso tipo a un metodo., Il parametro nel metodo è dichiarato come segue-
typeName... parameterName
Nella dichiarazione del metodo, si specifica il tipo seguito da un puntini di sospensione (…). In un metodo è possibile specificare un solo parametro di lunghezza variabile, che deve essere l’ultimo parametro. Qualsiasi parametro regolare deve precederlo.
Esempio
Questo produrrà il seguente risultato −
Output
The max value is 56.5The max value is 3.0
Il metodo finalize ()
È possibile definire un metodo che verrà chiamato appena prima della distruzione finale di un oggetto da parte del garbage collector., Questo metodo è chiamato finalize (), e può essere utilizzato per garantire che un oggetto termina in modo pulito.
Ad esempio, è possibile utilizzare finalize( ) per assicurarsi che un file aperto di proprietà di quell’oggetto sia chiuso.
Per aggiungere un finalizzatore a una classe, è sufficiente definire il metodo finalize (). Il runtime Java chiama quel metodo ogni volta che sta per riciclare un oggetto di quella classe.
All’interno del metodo finalize (), verranno specificate le azioni che devono essere eseguite prima che un oggetto venga distrutto.,
Il metodo finalize( ) ha questa forma generale −
protected void finalize( ) { // finalization code here}
Qui, la parola chiave protetta è uno specificatore che impedisce l’accesso a finalize( ) dal codice definito al di fuori della sua classe.
Ciò significa che non è possibile sapere quando o anche se finalize( ) verrà eseguito. Ad esempio, se il programma termina prima che si verifichi la garbage collection, finalize( ) non verrà eseguito.
Lascia un commento