logo

Metodo in Java

In generale, a metodo è un modo per eseguire alcuni compiti. Allo stesso modo, il metodo in Java è una raccolta di istruzioni che esegue un'attività specifica. Fornisce la riusabilità del codice. Possiamo anche modificare facilmente il codice utilizzando metodi . In questa sezione impareremo cos'è un metodo in Java, tipi di metodi, dichiarazione di metodi, E come chiamare un metodo in Java .

Cos'è un metodo in Java?

UN metodo è un blocco di codice o una raccolta di istruzioni oppure un insieme di codice raggruppato per eseguire una determinata attività o operazione. Viene utilizzato per raggiungere il riusabilità di codice. Scriviamo un metodo una volta e lo usiamo molte volte. Non è necessario scrivere codice ancora e ancora. Fornisce inoltre il facile modifica E leggibilità di codice, semplicemente aggiungendo o rimuovendo una porzione di codice. Il metodo viene eseguito solo quando lo chiamiamo o invochiamo.

Il metodo più importante in Java è il principale() metodo. Se vuoi saperne di più sul metodo main(), segui il collegamento https://www.javatpoint.com/java-main-method .

Dichiarazione del metodo

La dichiarazione del metodo fornisce informazioni sugli attributi del metodo, come visibilità, tipo restituito, nome e argomenti. Ha sei componenti noti come intestazione del metodo , come abbiamo mostrato nella figura seguente.

Metodo in Java

Firma del metodo: Ogni metodo ha una firma del metodo. Fa parte della dichiarazione del metodo. Include il nome del metodo E elenco dei parametri .

Specificatore di accesso: Lo specificatore o il modificatore di accesso è il tipo di accesso del metodo. Specifica la visibilità del metodo. Java fornisce quattro tipi di specificatore di accesso:

    Pubblico:Il metodo è accessibile da tutte le classi quando utilizziamo lo specificatore pubblico nella nostra applicazione.Privato:Quando utilizziamo uno specificatore di accesso privato, il metodo è accessibile solo nelle classi in cui è definito.Protetto:Quando utilizziamo lo specificatore di accesso protetto, il metodo è accessibile all'interno dello stesso pacchetto o delle sottoclassi in un pacchetto diverso.Predefinito:Quando non utilizziamo alcun identificatore di accesso nella dichiarazione del metodo, Java utilizza lo specificatore di accesso predefinito per impostazione predefinita. È visibile solo dallo stesso pacchetto.

Tipo di reso: Il tipo restituito è un tipo di dati restituito dal metodo. Può avere un tipo di dati primitivo, oggetto, raccolta, void, ecc. Se il metodo non restituisce nulla, utilizziamo la parola chiave void.

convenzione di denominazione per Java

Nome del metodo: È un nome univoco utilizzato per definire il nome di un metodo. Deve corrispondere alla funzionalità del metodo. Supponiamo che se stiamo creando un metodo per la sottrazione di due numeri, il nome del metodo deve essere sottrazione(). Un metodo viene richiamato tramite il suo nome.

Elenco parametri: È l'elenco dei parametri separati da una virgola e racchiusi tra la coppia di parentesi. Contiene il tipo di dati e il nome della variabile. Se il metodo non ha parametri, lascia vuote le parentesi.

Corpo del metodo: Fa parte della dichiarazione del metodo. Contiene tutte le azioni da eseguire. È racchiuso all'interno della coppia di parentesi graffe.

Denominare un metodo

Mentre definisci un metodo, ricorda che il nome del metodo deve essere a verbo e inizia con a minuscolo lettera. Se il nome del metodo contiene più di due parole, il nome deve essere un verbo seguito da un aggettivo o da un sostantivo. Nel nome del metodo composto da più parole, deve essere presente la prima lettera di ciascuna parola maiuscolo tranne la prima parola. Per esempio:

Nome del metodo composto da una sola parola: somma(), area()

Nome del metodo composto da più parole: areaOfCircle(), stringComparision()

È anche possibile che un metodo abbia lo stesso nome di un altro metodo nella stessa classe, è noto come sovraccarico del metodo .

Tipi di metodo

In Java esistono due tipi di metodi:

  • Metodo predefinito
  • Metodo definito dall'utente

Metodo predefinito

In Java, i metodi predefiniti sono il metodo già definito nelle librerie di classi Java, noti come metodi predefiniti. È anche conosciuto come il metodo della libreria standard O metodo integrato . Possiamo utilizzare direttamente questi metodi semplicemente richiamandoli nel programma in qualsiasi momento. Alcuni metodi predefiniti sono lunghezza(), uguale(), confrontaCon(), sqrt(), ecc. Quando chiamiamo uno qualsiasi dei metodi predefiniti nel nostro programma, una serie di codici relativi al metodo corrispondente viene eseguito in background che è già memorizzato nella libreria.

Ogni metodo predefinito è definito all'interno di una classe. Ad esempio stampa() il metodo è definito nel java.io.PrintStream classe. Stampa l'istruzione che scriviamo all'interno del metodo. Per esempio, stampa('Java') , stampa Java sulla console.

Vediamo un esempio del metodo predefinito.

Demo.java

 public class Demo { public static void main(String[] args) { // using the max() method of Math class System.out.print('The maximum number is: ' + Math.max(9,7)); } } 

Produzione:

 The maximum number is: 9 

Nell'esempio sopra abbiamo utilizzato tre metodi predefiniti principale(), stampa(), E massimo() . Abbiamo utilizzato questi metodi direttamente senza dichiarazione perché sono predefiniti. Il metodo print() è un metodo di PrintStream classe che stampa il risultato sulla console. Il metodo max() è un metodo di Matematica classe che restituisce il maggiore tra due numeri.

Possiamo anche vedere la firma del metodo di qualsiasi metodo predefinito utilizzando il collegamento https://docs.oracle.com/ . Quando esaminiamo il collegamento e vediamo la firma del metodo max(), troviamo quanto segue:

Metodo in Java

Nella firma del metodo sopra, vediamo che la firma del metodo ha uno specificatore di accesso pubblico , modificatore di non accesso statico , tipo restituito int , nome del metodo massimo(), elenco dei parametri (int a, int b). Nell'esempio precedente, invece di definire il metodo, abbiamo semplicemente invocato il metodo. Questo è il vantaggio di un metodo predefinito. Rende la programmazione meno complicata.

Allo stesso modo, possiamo anche vedere la firma del metodo print().

Metodo definito dall'utente

Il metodo scritto dall'utente o dal programmatore è noto come un definito dall'utente metodo. Questi metodi vengono modificati in base alle esigenze.

Come creare un metodo definito dall'utente

Creiamo un metodo definito dall'utente che controlla che il numero sia pari o dispari. Per prima cosa definiremo il metodo.

 //user defined method public static void findEvenOdd(int num) { //method body if(num%2==0) System.out.println(num+' is even'); else System.out.println(num+' is odd'); } 

Abbiamo definito il metodo sopra chiamato findevenodd(). Ha un parametro nessuno di tipo int. Il metodo non restituisce alcun valore, ecco perché abbiamo utilizzato void. Il corpo del metodo contiene i passaggi per verificare che il numero sia pari o dispari. Se il numero è pari, stampa il numero è anche , altrimenti stampa il numero è strano .

Come chiamare o richiamare un metodo definito dall'utente

Una volta definito un metodo, è necessario chiamarlo. La chiamata di un metodo in un programma è semplice. Quando chiamiamo o invochiamo un metodo definito dall'utente, il controllo del programma viene trasferito al metodo chiamato.

 import java.util.Scanner; public class EvenOdd { public static void main (String args[]) { //creating Scanner class object Scanner scan=new Scanner(System.in); System.out.print('Enter the number: '); //reading value from the user int num=scan.nextInt(); //method calling findEvenOdd(num); } 

Nel frammento di codice sopra, non appena il compilatore raggiunge line trovaPariDispari(num), il controllo viene trasferito al metodo e fornisce l'output di conseguenza.

Combiniamo entrambi i frammenti di codice in un unico programma ed eseguiamolo.

EvenOdd.java

 import java.util.Scanner; public class EvenOdd { public static void main (String args[]) { //creating Scanner class object Scanner scan=new Scanner(System.in); System.out.print('Enter the number: '); //reading value from user int num=scan.nextInt(); //method calling findEvenOdd(num); } //user defined method public static void findEvenOdd(int num) { //method body if(num%2==0) System.out.println(num+' is even'); else System.out.println(num+' is odd'); } } 

Uscita 1:

stringa come array
 Enter the number: 12 12 is even 

Uscita 2:

 Enter the number: 99 99 is odd 

Vediamo un altro programma che restituisce un valore al metodo chiamante.

Nel seguente programma, abbiamo definito un metodo denominato aggiungere() che sommano i due numeri. Ha due parametri n1 e n2 di tipo intero. I valori di n1 e n2 corrispondono rispettivamente al valore di a e b. Pertanto, il metodo somma il valore di a e b, lo memorizza nella variabile s e restituisce la somma.

Aggiunta.java

 public class Addition { public static void main(String[] args) { int a = 19; int b = 5; //method calling int c = add(a, b); //a and b are actual parameters System.out.println('The sum of a and b is= ' + c); } //user defined method public static int add(int n1, int n2) //n1 and n2 are formal parameters { int s; s=n1+n2; return s; //returning the sum } } 

Produzione:

 The sum of a and b is= 24 

Metodo statico

Un metodo che ha una parola chiave statica è noto come metodo statico. In altre parole, un metodo che appartiene a una classe anziché a un'istanza di una classe è noto come metodo statico. Possiamo anche creare un metodo statico utilizzando la parola chiave statico prima del nome del metodo.

Il vantaggio principale di un metodo statico è che possiamo chiamarlo senza creare un oggetto. Può accedere ai membri dati statici e anche modificarne il valore. Viene utilizzato per creare un metodo di istanza. Viene richiamato utilizzando il nome della classe. Il miglior esempio di metodo statico è il principale() metodo.

Esempio di metodo statico

Visualizza.java

 public class Display { public static void main(String[] args) { show(); } static void show() { System.out.println('It is an example of static method.'); } } 

Produzione:

np significa
 It is an example of a static method. 

Metodo di istanza

Il metodo della classe è noto come an metodo di istanza . È un non statico metodo definito nella classe. Prima di chiamare o invocare il metodo di istanza, è necessario creare un oggetto della sua classe. Vediamo un esempio di un metodo di istanza.

InstanceMethodExample.java

 public class InstanceMethodExample { public static void main(String [] args) { //Creating an object of the class InstanceMethodExample obj = new InstanceMethodExample(); //invoking instance method System.out.println('The sum is: '+obj.add(12, 13)); } int s; //user-defined method because we have not used static keyword public int add(int a, int b) { s = a+b; //returning the sum return s; } } 

Produzione:

 The sum is: 25 

Esistono due tipi di metodi di istanza:

    Metodo di accesso Metodo mutatore

Metodo di accesso: Il metodo o i metodi che leggono le variabili di istanza sono noti come metodo di accesso. Possiamo identificarlo facilmente perché il metodo è preceduto dalla parola Ottenere . È anche noto come getter . Restituisce il valore del campo privato. Viene utilizzato per ottenere il valore del campo privato.

Esempio

 public int getId() { return Id; } 

Metodo mutatore: I metodi leggono le variabili di istanza e modificano anche i valori. Possiamo identificarlo facilmente perché il metodo è preceduto dalla parola impostato . È anche noto come setter O modificatori . Non restituisce nulla. Accetta un parametro dello stesso tipo di dati che dipende dal campo. Viene utilizzato per impostare il valore del campo privato.

Esempio

 public void setRoll(int roll) { this.roll = roll; } 

Esempio di metodo accessorio e mutatore

Student.java

 public class Student { private int roll; private String name; public int getRoll() //accessor method { return roll; } public void setRoll(int roll) //mutator method { this.roll = roll; } public String getName() { return name; } public void setName(String name) { this.name = name; } public void display() { System.out.println('Roll no.: '+roll); System.out.println('Student name: '+name); } } 

Metodo astratto

Il metodo che non ha un corpo è noto come metodo astratto. In altre parole, senza un'implementazione è noto come metodo astratto. Dichiara sempre nel classe astratta . Significa che la classe stessa deve essere astratta se ha un metodo astratto. Per creare un metodo astratto, utilizziamo la parola chiave astratto .

Sintassi

 abstract void method_name(); 

Esempio di metodo astratto

Demo.java

 abstract class Demo //abstract class { //abstract method declaration abstract void display(); } public class MyClass extends Demo { //method impelmentation void display() { System.out.println('Abstract method?'); } public static void main(String args[]) { //creating object of abstract class Demo obj = new MyClass(); //invoking abstract method obj.display(); } } 

Produzione:

 Abstract method... 

Metodo di fabbrica

È un metodo che restituisce un oggetto alla classe a cui appartiene. Tutti i metodi statici sono metodi di fabbrica. Per esempio, NumberFormat obj = NumberFormat.getNumberInstance();