Általában véve a módszer valamilyen feladat végrehajtásának módja. Hasonlóképpen a módszer Java-ban utasítások gyűjteménye, amely egy adott feladatot hajt végre. Ez biztosítja a kód újrafelhasználhatóságát. A kódot is könnyen módosíthatjuk a használatával mód . Ebben a részben megtanuljuk mi az a metódus a Java-ban, metódusok típusai, metódus deklaráció, és hogyan hívjunk meg egy metódust Java-ban .
Mi az a módszer a Java-ban?
A módszer egy kódblokk vagy utasítások gyűjteménye, vagy egy bizonyos feladat vagy művelet végrehajtására csoportosított kódkészlet. Arra használják, hogy elérjék a újrahasználhatóság kódból. Egy metódust egyszer írunk, és sokszor használjuk. Nem szükséges újra és újra kódot írnunk. Azt is biztosítja a könnyű módosítás és olvashatóság kódrészlet hozzáadásával vagy eltávolításával. A metódus csak akkor fut le, amikor meghívjuk vagy meghívjuk.
A Java legfontosabb módszere a fő() módszer. Ha többet szeretne olvasni a main() metódusról, kattintson a linkre https://www.javatpoint.com/java-main-method .
Módszer nyilatkozat
A metódus deklarációja információkat nyújt a metódus attribútumairól, például a láthatóságról, a visszatérési típusról, a névről és az argumentumokról. Hat összetevője van, amelyek ún módszer fejléce , ahogy az alábbi ábrán is bemutattuk.
Módszer aláírása: Minden metódusnak van metódusaláírása. Ez a metódus deklaráció része. Ez magában foglalja a módszer neve és paraméterlista .
Hozzáférési specifikáció: A hozzáférés-specifikátor vagy módosító a metódus hozzáférési típusa. Meghatározza a metódus láthatóságát. Java biztosítja négy hozzáférés-specifikátorok típusai:
Visszaküldés típusa: A visszatérési típus a metódus által visszaadott adattípus. Lehet primitív adattípusa, objektum, gyűjtemény, void stb. Ha a metódus nem ad vissza semmit, a void kulcsszót használjuk.
testreszabott kivétel java-ban
Módszer neve: Ez egy egyedi név, amely egy metódus nevének meghatározására szolgál. Meg kell felelnie a módszer funkcionalitásának. Tegyük fel, hogy ha metódust hozunk létre két szám kivonására, akkor a metódus nevének a következőnek kell lennie kivonás(). A metódus a neve alapján kerül meghívásra.
Paraméterlista: Ez a paraméterek listája, vesszővel elválasztva és zárójelek között. Tartalmazza az adattípust és a változó nevét. Ha a metódusnak nincs paramétere, hagyja üresen a zárójeleket.
A módszer törzse: Ez a metódus deklaráció része. Az összes végrehajtandó műveletet tartalmazza. A göndör fogszabályozó párba van zárva.
Egy módszer elnevezése
A metódus meghatározásakor ne feledje, hogy a metódus nevének a ige és kezdje a-val kisbetűvel levél. Ha a metódusnév kettőnél több szóból áll, az utónévnek igének kell lennie, amelyet melléknév vagy főnév követ. A többszavas metódusnévben minden szó első betűjét be kell írni nagybetűs kivéve az első szót. Például:
Egyszavas módszer neve: összeg(), terület()
Többszavas módszer neve: areaOfCircle(), stringComparision()
Az is lehetséges, hogy egy metódusnak ugyanaz a neve, mint egy másik metódusnévnek ugyanabban az osztályban módszer túlterhelése .
A módszer típusai
A Java-ban kétféle módszer létezik:
- Előre meghatározott módszer
- Felhasználó által definiált módszer
Előre meghatározott módszer
A Java-ban az előre definiált metódusok azok a metódusok, amelyek már definiáltak a Java osztálykönyvtárakban, amelyeket előre definiált metódusoknak neveznek. Más néven a szabványos könyvtári módszer vagy beépített módszer . Ezeket a metódusokat közvetlenül használhatjuk, ha a programban bármikor meghívjuk őket. Néhány előre meghatározott módszer hossz(), egyenlő(), Összehasonlít(), sqrt(), stb. Amikor a programunkban bármelyik előre definiált metódust meghívjuk, a megfelelő metódushoz kapcsolódó kódok sorozata fut le a háttérben, amely már a könyvtárban van tárolva.
Minden egyes előre meghatározott metódus egy osztályon belül van definiálva. Mint például nyomtatás() A módszert a java.io.PrintStream osztály. Kiírja azt az állítást, amit a metóduson belül írunk. Például, print ('Java') , kiírja a Java-t a konzolra.
Lássunk egy példát az előre meghatározott módszerre.
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)); } }
Kimenet:
The maximum number is: 9
A fenti példában három előre meghatározott módszert használtunk main(), print(), és max() . Ezeket a metódusokat közvetlenül, deklaráció nélkül használtuk, mert előre meghatározottak. A print() metódus a PrintStream osztály, amely kiírja az eredményt a konzolon. A max() metódus a Math osztály, amely két szám közül a nagyobbat adja vissza.
Bármely előre meghatározott metódus metódusaláírását is láthatjuk a hivatkozás használatával https://docs.oracle.com/ . Amikor végigmegyünk a hivatkozáson, és látjuk a max() metódus aláírását, a következőket találjuk:
A fenti metódusaláírásban azt látjuk, hogy a metódusaláírásnak hozzáférés-specifikátora van nyilvános , nem hozzáférés módosító statikus , visszatérési típus int , módszer neve max(), paraméterlista (int a, int b). A fenti példában a metódus meghatározása helyett csak a metódust hívtuk meg. Ez az előre meghatározott módszer előnye. Ez kevésbé bonyolulttá teszi a programozást.
Hasonlóképpen láthatjuk a print() metódus metódusaláírását is.
Felhasználó által definiált módszer
A felhasználó vagy programozó által írt metódust ún egy felhasználó által meghatározott módszer. Ezeket a módszereket a követelményeknek megfelelően módosítják.
Felhasználó által definiált módszer létrehozása
Hozzunk létre egy felhasználó által definiált metódust, amely ellenőrzi, hogy a szám páros vagy páratlan-e. Először is meghatározzuk a módszert.
//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'); }
Meghatároztuk a fenti findevenodd() metódust. Paramétere van az egyiken típusú int. A metódus nem ad vissza értéket, ezért a void-ot használjuk. A metódustörzs tartalmazza a páros vagy páratlan szám ellenőrzéséhez szükséges lépéseket. Ha a szám páros, kiírja a számot egyenlő , különben kiírja a számot furcsa .
Felhasználó által meghatározott módszer hívása vagy előhívása
Miután definiáltunk egy metódust, meg kell hívni. A metódus meghívása egy programban egyszerű. Amikor meghívunk vagy meghívunk egy felhasználó által definiált metódust, a programvezérlés átvált a meghívott metódusra.
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); }
A fenti kódrészletben, amint a fordító eléri a sort findEvenOdd(szám), a vezérlés átkerül a metódusra, és ennek megfelelően adja meg a kimenetet.
Kombináljuk mindkét kódrészletet egyetlen programban, és hajtsuk végre azt.
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'); } }
1. kimenet:
Enter the number: 12 12 is even
2. kimenet:
Enter the number: 99 99 is odd
Lássunk egy másik programot, amely értéket ad vissza a hívó metódusnak.
e r modellpéldák
A következő programban definiáltunk egy elnevezésű metódust add() ami összeadja a két számot. Két n1 és n2 egész típusú paramétere van. Az n1 és n2 értéke megfelel a, illetve b értékének. Ezért a metódus összeadja a és b értékét, és az s változóban tárolja, és az összeget adja vissza.
Kiegészítés.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 } }
Kimenet:
The sum of a and b is= 24
Statikus módszer
A statikus kulcsszóval rendelkező metódust statikus módszernek nevezzük. Más szavakkal, egy olyan metódust, amely egy osztályhoz tartozik, nem pedig egy osztály példányához, statikus metódusnak nevezzük. A kulcsszó használatával statikus metódust is létrehozhatunk statikus a metódus neve előtt.
A statikus metódus fő előnye, hogy objektum létrehozása nélkül hívhatjuk meg. Hozzáférhet a statikus adattagokhoz, és megváltoztathatja azok értékét. Példánymetódus létrehozására szolgál. Meghívása az osztálynév használatával történik. A statikus módszer legjobb példája a fő() módszer.
Példa statikus módszerre
Display.java
public class Display { public static void main(String[] args) { show(); } static void show() { System.out.println('It is an example of static method.'); } }
Kimenet:
determinisztikus véges automaták
It is an example of a static method.
Példány módszer
Az osztály metódusa an példány módszer . Ez egy nem statikus osztályban meghatározott metódus. A példánymetódus meghívása vagy meghívása előtt létre kell hozni egy objektumot az osztályából. Nézzünk egy példát egy példánymódszerre.
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; } }
Kimenet:
The sum is: 25
Kétféle példánymódszer létezik:
Hozzáférési módszer: A példányváltozó(ka)t beolvasó metódus(oka)t accessor metódusként ismerjük. Könnyen azonosíthatjuk, mert a metódus előtagja a szónak kap . Úgy is ismert, mint getterek . A privát mező értékét adja vissza. A privát mező értékének megállapítására szolgál.
Példa
public int getId() { return Id; }
Mutator Method: A metódus(ok) beolvassák a példányváltozó(ka)t, és módosítják az értékeket is. Könnyen azonosíthatjuk, mert a metódus előtagja a szónak készlet . Úgy is ismert, mint szetterek vagy módosítók . Nem ad vissza semmit. A mezőtől függő, azonos adattípusú paramétert fogad el. A privát mező értékének beállítására szolgál.
Példa
public void setRoll(int roll) { this.roll = roll; }
Példa az accessor és a mutator módszerre
Diák.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); } }
Absztrakt módszer
Azt a módszert, amelynek nincs metódustörzse, absztrakt módszernek nevezzük. Más szavakkal, a megvalósítás nélkül absztrakt módszernek nevezik. Mindig kijelenti a absztrakt osztály . Ez azt jelenti, hogy magának az osztálynak absztraktnak kell lennie, ha van absztrakt metódusa. Absztrakt metódus létrehozásához a kulcsszót használjuk absztrakt .
Szintaxis
abstract void method_name();
Példa absztrakt módszerre
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(); } }
Kimenet:
Abstract method...
Gyári módszer
Ez egy olyan metódus, amely visszaadja az objektumot abba az osztályba, amelyhez tartozik. Minden statikus módszer gyári módszer. Például, NumberFormat obj = NumberFormat.getNumberInstance();