logo

Metoda u Javi

Općenito, a metoda je način obavljanja nekog zadatka. Slično tome, metoda u Javi je zbirka uputa koja izvršava određeni zadatak. Omogućuje mogućnost ponovne upotrebe koda. Također možemo jednostavno modificirati kod pomoću metode . U ovom odjeljku naučit ćemo što je metoda u Javi, vrste metoda, deklaracija metode, i kako pozvati metodu u Javi .

Što je metoda u Javi?

A metoda je blok koda ili zbirka izjava ili skup koda grupiran zajedno za izvođenje određenog zadatka ili operacije. Koristi se za postizanje ponovno korištenje koda. Metodu napišemo jednom i koristimo je više puta. Ne zahtijevamo pisanje koda uvijek iznova. Također pruža laka izmjena i čitljivost koda, samo dodavanjem ili uklanjanjem dijela koda. Metoda se izvršava samo kada je pozovemo ili dozovemo.

Najvažnija metoda u Javi je glavni() metoda. Ako želite pročitati više o main() metodi, idite kroz poveznicu https://www.javatpoint.com/java-main-method .

Deklaracija metode

Deklaracija metode pruža informacije o atributima metode, kao što su vidljivost, povratni tip, naziv i argumenti. Ima šest komponenti koje su poznate kao zaglavlje metode , kao što smo pokazali na sljedećoj slici.

Metoda u Javi

Potpis metode: Svaka metoda ima potpis metode. To je dio deklaracije metode. To uključuje naziv metode i popis parametara .

Specifikator pristupa: Specifikator pristupa ili modifikator je vrsta pristupa metodi. Određuje vidljivost metode. Java pruža četiri vrste specifičara pristupa:

    Javnost:Metoda je dostupna svim klasama kada koristimo javni specifikator u našoj aplikaciji.Privatna:Kada koristimo specifikator privatnog pristupa, metoda je dostupna samo u klasama u kojima je definirana.Zaštićen:Kada koristimo zaštićeni specifikator pristupa, metoda je dostupna unutar istog paketa ili podklasa u drugom paketu.Zadano:Kada ne koristimo nikakav specifikator pristupa u deklaraciji metode, Java prema zadanim postavkama koristi zadani specifikator pristupa. Vidljivo je samo iz istog paketa.

Vrsta povrata: Povratni tip je tip podataka koji metoda vraća. Može imati primitivni tip podataka, objekt, kolekciju, void, itd. Ako metoda ne vraća ništa, koristimo ključnu riječ void.

niz za sortiranje u Javi

Naziv metode: To je jedinstveno ime koje se koristi za definiranje naziva metode. Mora odgovarati funkcionalnosti metode. Pretpostavimo, ako kreiramo metodu za oduzimanje dva broja, naziv metode mora biti oduzimanje(). Metoda se poziva svojim imenom.

Popis parametara: To je popis parametara odvojenih zarezom i uvrštenih u par zagrada. Sadrži tip podataka i naziv varijable. Ako metoda nema parametar, ostavite zagrade prazne.

Tijelo metode: To je dio deklaracije metode. Sadrži sve radnje koje treba izvesti. Omeđen je parom vitičastih zagrada.

Imenovanje metode

Dok definirate metodu, zapamtite da naziv metode mora biti a glagol i počnite s a mala slova pismo. Ako naziv metode ima više od dvije riječi, prvo ime mora biti glagol iza kojeg slijedi pridjev ili imenica. U nazivu metode s više riječi mora biti prvo slovo svake riječi velika slova osim prve riječi. Na primjer:

Naziv metode od jedne riječi: zbroj(), površina()

Naziv metode od više riječi: areaOfCircle(), stringComparision()

Također je moguće da metoda ima isto ime kao drugo ime metode u istoj klasi, poznata je kao preopterećenje metode .

Vrste metoda

U Javi postoje dvije vrste metoda:

  • Unaprijed definirana metoda
  • Korisnički definirana metoda

Unaprijed definirana metoda

U Javi, unaprijed definirane metode su metode koje su već definirane u Java bibliotekama klasa poznate kao unaprijed definirane metode. Također je poznat kao metoda standardne knjižnice ili ugrađena metoda . Ove metode možemo izravno koristiti samo pozivanjem u programu u bilo kojem trenutku. Neke unaprijed definirane metode su duljina(), jednako(), usporedi(), sqrt(), itd. Kada pozovemo bilo koju od unaprijed definiranih metoda u našem programu, niz kodova povezanih s odgovarajućom metodom radi u pozadini koja je već pohranjena u knjižnici.

Svaka unaprijed definirana metoda definirana je unutar klase. Kao npr ispis() metoda je definirana u java.io.PrintStream razreda. Ispisuje izjavu koju pišemo unutar metode. Na primjer, ispis('Java') , ispisuje Java na konzoli.

Pogledajmo primjer unaprijed definirane metode.

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)); } } 

Izlaz:

 The maximum number is: 9 

U gornjem primjeru koristili smo tri unaprijed definirane metode main(), print(), i max() . Koristili smo ove metode izravno bez deklaracije jer su unaprijed definirane. Metoda print() je metoda PrintStream klasa koja ispisuje rezultat na konzoli. Metoda max() je metoda matematika klasa koja vraća veći od dva broja.

Također možemo vidjeti potpis metode bilo koje unaprijed definirane metode korištenjem veze https://docs.oracle.com/ . Kada prođemo kroz vezu i vidimo potpis metode max(), nalazimo sljedeće:

Metoda u Javi

U gornjem potpisu metode vidimo da potpis metode ima specifikator pristupa javnost , modifikator nepristupa statički , vrsta povrata int , naziv metode max(), popis parametara (int a, int b). U gornjem primjeru, umjesto definiranja metode, samo smo pozvali metodu. Ovo je prednost unaprijed definirane metode. Programiranje čini manje kompliciranim.

Slično, također možemo vidjeti potpis metode metode print().

Korisnički definirana metoda

Metoda koju je napisao korisnik ili programer poznata je kao definiran od strane korisnika metoda. Ove metode se modificiraju u skladu sa zahtjevima.

pretvaranje tipa i pretvorba tipa u Javi

Kako stvoriti korisnički definiranu metodu

Kreirajmo korisnički definiranu metodu koja provjerava je li broj paran ili neparan. Prvo ćemo definirati metodu.

 //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'); } 

Definirali smo gornju metodu pod nazivom findevenodd(). Ima parametar na jedan tipa int. Metoda ne vraća nikakvu vrijednost i zato smo koristili void. Tijelo metode sadrži korake za provjeru je li broj paran ili neparan. Ako je broj paran, ispisuje broj je čak , inače ispisuje broj je čudno .

Kako pozvati ili pokrenuti korisnički definiranu metodu

Nakon što smo definirali metodu, treba je pozvati. Pozivanje metode u programu je jednostavno. Kada pozovemo ili dozovemo korisnički definiranu metodu, kontrola programa se prenosi na pozvanu metodu.

 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); } 

U gornjem isječku koda, čim kompajler dođe do retka pronađiparnepar(broj), prijenos kontrole na metodu i prema tome daje izlaz.

Kombinirajmo oba isječka koda u jedan program i izvršimo ga.

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'); } } 

Izlaz 1:

 Enter the number: 12 12 is even 

Izlaz 2:

 Enter the number: 99 99 is odd 

Pogledajmo još jedan program koji vraća vrijednost pozivnoj metodi.

U sljedećem programu definirali smo metodu pod nazivom dodati() koji zbrajaju dva broja. Ima dva parametra n1 i n2 cjelobrojnog tipa. Vrijednosti n1 i n2 odgovaraju vrijednostima a i b. Stoga metoda zbraja vrijednost a i b i pohranjuje je u varijablu s te vraća zbroj.

Zbrajanje.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 } } 

Izlaz:

 The sum of a and b is= 24 

Statička metoda

Metoda koja ima ključnu riječ static poznata je kao statička metoda. Drugim riječima, metoda koja pripada klasi, a ne instanci klase, poznata je kao statička metoda. Također možemo stvoriti statičku metodu pomoću ključne riječi statički prije naziva metode.

Glavna prednost statičke metode je da je možemo pozvati bez stvaranja objekta. Može pristupiti članovima statičkih podataka i također promijeniti njihovu vrijednost. Koristi se za stvaranje metode instance. Poziva se korištenjem naziva klase. Najbolji primjer statičke metode je glavni() metoda.

Primjer statičke metode

Prikaz.java

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

Izlaz:

pyspark
 It is an example of a static method. 

Metoda instance

Metoda klase poznata je kao an metoda instance . To je nestatičan metoda definirana u klasi. Prije poziva ili pozivanja metode instance potrebno je kreirati objekt njene klase. Pogledajmo primjer metode instance.

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; } } 

Izlaz:

 The sum is: 25 

Postoje dvije vrste metoda instance:

    Metoda pristupnika Metoda mutatora

Metoda pristupa: Metoda(e) koja čita varijablu(e) instance poznata je kao metoda pristupa. Lako ga možemo identificirati jer metoda ima prefiks riječi dobiti . Također je poznat kao dobivači . Vraća vrijednost privatnog polja. Koristi se za dobivanje vrijednosti privatnog polja.

Primjer

 public int getId() { return Id; } 

Metoda mutatora: Metoda(e) čita varijablu(e) instance i također mijenja vrijednosti. Lako ga možemo identificirati jer metoda ima prefiks riječi postaviti . Također je poznat kao postavljači ili modifikatori . Ne vraća ništa. Prihvaća parametar iste vrste podataka koji ovisi o polju. Koristi se za postavljanje vrijednosti privatnog polja.

Primjer

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

Primjer metode pristupnika i mutatora

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); } } 

Apstraktna metoda

Metoda koja nema tijelo metode poznata je kao apstraktna metoda. Drugim riječima, bez implementacije je poznata kao apstraktna metoda. Uvijek se izjavljuje u apstraktna klasa . To znači da sama klasa mora biti apstraktna ako ima apstraktnu metodu. Za stvaranje apstraktne metode koristimo ključnu riječ sažetak .

Sintaksa

 abstract void method_name(); 

Primjer apstraktne metode

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(); } } 

Izlaz:

 Abstract method... 

Tvornička metoda

To je metoda koja vraća objekt u klasu kojoj pripada. Sve statičke metode su tvorničke metode. Na primjer, NumberFormat obj = NumberFormat.getNumberInstance();