logo

Methode in Java

Im Allgemeinen a Methode ist eine Möglichkeit, eine Aufgabe auszuführen. Ebenso die Methode in Java ist eine Sammlung von Anweisungen, die eine bestimmte Aufgabe ausführen. Es sorgt für die Wiederverwendbarkeit von Code. Wir können Code auch problemlos mit ändern Methoden . In diesem Abschnitt werden wir lernen Was ist eine Methode in Java, Methodentypen, Methodendeklaration, Und wie man eine Methode in Java aufruft .

Was ist eine Methode in Java?

A Methode ist ein Codeblock oder eine Sammlung von Anweisungen oder eine Gruppe von Code, die zur Ausführung einer bestimmten Aufgabe oder Operation gruppiert sind. Es wird verwendet, um das zu erreichen Wiederverwendbarkeit von Code. Wir schreiben eine Methode einmal und verwenden sie viele Male. Wir müssen nicht immer wieder Code schreiben. Es bietet auch die einfache Änderung Und Lesbarkeit von Code, indem Sie einfach einen Teil des Codes hinzufügen oder entfernen. Die Methode wird nur ausgeführt, wenn wir sie aufrufen oder aufrufen.

Die wichtigste Methode in Java ist die hauptsächlich() Methode. Wenn Sie mehr über die Methode main() erfahren möchten, klicken Sie auf den Link https://www.javatpoint.com/java-main-method .

Methodendeklaration

Die Methodendeklaration stellt Informationen zu Methodenattributen bereit, z. B. Sichtbarkeit, Rückgabetyp, Name und Argumente. Es besteht aus sechs Komponenten, die als bekannt sind Methodenheader , wie wir in der folgenden Abbildung gezeigt haben.

Methode in Java

Methodensignatur: Jede Methode verfügt über eine Methodensignatur. Es ist Teil der Methodendeklaration. Es beinhaltet die Methodenname Und Parameterliste .

Zugriffsspezifizierer: Der Zugriffsspezifizierer oder -modifikator ist der Zugriffstyp der Methode. Es gibt die Sichtbarkeit der Methode an. Java bietet vier Arten von Zugriffsspezifizierern:

    Öffentlich:Auf die Methode können alle Klassen zugreifen, wenn wir in unserer Anwendung öffentliche Spezifizierer verwenden.Privat:Wenn wir einen privaten Zugriffsspezifizierer verwenden, ist die Methode nur in den Klassen zugänglich, in denen sie definiert ist.Geschützt:Wenn wir einen geschützten Zugriffsspezifizierer verwenden, kann auf die Methode innerhalb desselben Pakets oder in Unterklassen in einem anderen Paket zugegriffen werden.Standard:Wenn wir in der Methodendeklaration keinen Zugriffsspezifizierer verwenden, verwendet Java standardmäßig den Standardzugriffsspezifizierer. Es ist nur aus demselben Paket sichtbar.

Rückgabetyp: Der Rückgabetyp ist ein Datentyp, den die Methode zurückgibt. Es kann einen primitiven Datentyp, ein Objekt, eine Sammlung, void usw. haben. Wenn die Methode nichts zurückgibt, verwenden wir das Schlüsselwort void.

Namenskonvention Java

Methodenname: Es handelt sich um einen eindeutigen Namen, der zur Definition des Namens einer Methode verwendet wird. Es muss der Funktionalität der Methode entsprechen. Angenommen, wenn wir eine Methode zur Subtraktion zweier Zahlen erstellen, muss der Methodenname lauten Subtraktion(). Eine Methode wird über ihren Namen aufgerufen.

Parameterliste: Es handelt sich um eine durch Komma getrennte und in Klammern eingeschlossene Liste von Parametern. Es enthält den Datentyp und den Variablennamen. Wenn die Methode keinen Parameter hat, lassen Sie die Klammern leer.

Methodenkörper: Es ist Teil der Methodendeklaration. Es enthält alle auszuführenden Aktionen. Es wird von den geschweiften Klammern umschlossen.

Benennen einer Methode

Denken Sie beim Definieren einer Methode daran, dass der Methodenname a sein muss Verb und beginnen Sie mit a Kleinbuchstaben Brief. Wenn der Methodenname aus mehr als zwei Wörtern besteht, muss der Vorname ein Verb sein, gefolgt von einem Adjektiv oder Substantiv. Im Mehrwort-Methodennamen muss der erste Buchstabe jedes Wortes enthalten sein Großbuchstaben außer dem ersten Wort. Zum Beispiel:

Einzelwort-Methodenname: Summe(), Fläche()

Methodenname mit mehreren Wörtern: areaOfCircle(), stringComparision()

Es ist auch möglich, dass eine Methode denselben Namen hat wie eine andere Methode in derselben Klasse, die als bezeichnet wird Methodenüberladung .

Arten von Methoden

In Java gibt es zwei Arten von Methoden:

  • Vordefinierte Methode
  • Benutzerdefinierte Methode

Vordefinierte Methode

In Java handelt es sich bei vordefinierten Methoden um Methoden, die bereits in den Java-Klassenbibliotheken definiert sind und als vordefinierte Methoden bezeichnet werden. Es ist auch als bekannt Standardbibliotheksmethode oder integrierte Methode . Wir können diese Methoden direkt verwenden, indem wir sie jederzeit im Programm aufrufen. Einige vordefinierte Methoden sind length(), equal(), CompareTo(), sqrt(), usw. Wenn wir eine der vordefinierten Methoden in unserem Programm aufrufen, wird im Hintergrund eine Reihe von Codes ausgeführt, die sich auf die entsprechende Methode beziehen und bereits in der Bibliothek gespeichert sind.

Jede einzelne vordefinierte Methode ist innerhalb einer Klasse definiert. Wie zum Beispiel drucken() Methode ist in der definiert java.io.PrintStream Klasse. Es gibt die Anweisung aus, die wir in die Methode schreiben. Zum Beispiel, print('Java') , es druckt Java auf der Konsole.

Sehen wir uns ein Beispiel der vordefinierten Methode an.

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

Ausgabe:

 The maximum number is: 9 

Im obigen Beispiel haben wir drei vordefinierte Methoden verwendet main(), print(), Und max() . Wir haben diese Methoden direkt ohne Deklaration verwendet, da sie vordefiniert sind. Die print()-Methode ist eine Methode von PrintStream Klasse, die das Ergebnis auf der Konsole ausgibt. Die Methode max() ist eine Methode von Mathematik Klasse, die die größere von zwei Zahlen zurückgibt.

Über den Link können wir auch die Methodensignatur jeder vordefinierten Methode sehen https://docs.oracle.com/ . Wenn wir den Link durchgehen und die Signatur der max()-Methode sehen, finden wir Folgendes:

Methode in Java

In der obigen Methodensignatur sehen wir, dass die Methodensignatur einen Zugriffsspezifizierer hat öffentlich , Nichtzugriffsmodifikator statisch , Rückgabetyp int , Methodenname max(), Parameterliste (int a, int b). Im obigen Beispiel haben wir die Methode nicht definiert, sondern lediglich aufgerufen. Dies ist der Vorteil einer vordefinierten Methode. Es macht die Programmierung weniger kompliziert.

Ebenso können wir auch die Methodensignatur der print()-Methode sehen.

Benutzerdefinierte Methode

Die vom Benutzer oder Programmierer geschriebene Methode wird als bezeichnet eine benutzerdefiniert Methode. Diese Methoden werden je nach Anforderung modifiziert.

So erstellen Sie eine benutzerdefinierte Methode

Erstellen wir eine benutzerdefinierte Methode, die prüft, ob die Zahl gerade oder ungerade ist. Zuerst definieren wir die Methode.

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

Wir haben die obige Methode mit dem Namen findevenodd() definiert. Es hat einen Parameter Auf eins vom Typ int. Die Methode gibt keinen Wert zurück, deshalb haben wir void verwendet. Der Methodenkörper enthält die Schritte zum Überprüfen, ob die Zahl gerade oder ungerade ist. Wenn die Zahl gerade ist, wird die Zahl gedruckt ist gerade , andernfalls wird die Nummer gedruckt ist ungerade .

So rufen Sie eine benutzerdefinierte Methode auf oder rufen sie auf

Sobald wir eine Methode definiert haben, sollte sie aufgerufen werden. Der Aufruf einer Methode in einem Programm ist einfach. Wenn wir eine benutzerdefinierte Methode aufrufen oder aufrufen, wird die Programmsteuerung an die aufgerufene Methode übertragen.

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

Im obigen Codeausschnitt, sobald der Compiler die Zeile erreicht findEvenOdd(num), Die Steuerung wird an die Methode übergeben und die entsprechende Ausgabe ausgegeben.

Lassen Sie uns beide Codeschnipsel in einem einzigen Programm kombinieren und ausführen.

EvenOdd.java

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

Ausgabe 1:

 Enter the number: 12 12 is even 

Ausgabe 2:

 Enter the number: 99 99 is odd 

Sehen wir uns ein anderes Programm an, das einen Wert an die aufrufende Methode zurückgibt.

Im folgenden Programm haben wir eine Methode namens definiert hinzufügen() das summiert die beiden Zahlen. Es verfügt über zwei Parameter n1 und n2 vom Typ Integer. Die Werte von n1 und n2 entsprechen jeweils dem Wert von a und b. Daher addiert die Methode den Wert von a und b, speichert ihn in der Variablen s und gibt die Summe zurück.

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

Ausgabe:

 The sum of a and b is= 24 

Statische Methode

Eine Methode mit dem Schlüsselwort static wird als statische Methode bezeichnet. Mit anderen Worten: Eine Methode, die zu einer Klasse und nicht zu einer Instanz einer Klasse gehört, wird als statische Methode bezeichnet. Wir können auch eine statische Methode erstellen, indem wir das Schlüsselwort verwenden statisch vor dem Methodennamen.

Der Hauptvorteil einer statischen Methode besteht darin, dass wir sie aufrufen können, ohne ein Objekt zu erstellen. Es kann auf statische Datenelemente zugreifen und auch deren Wert ändern. Es wird verwendet, um eine Instanzmethode zu erstellen. Der Aufruf erfolgt über den Klassennamen. Das beste Beispiel für eine statische Methode ist die hauptsächlich() Methode.

Beispiel einer statischen Methode

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

Ausgabe:

deterministische endliche Automaten
 It is an example of a static method. 

Instanzmethode

Die Methode der Klasse wird als an bezeichnet Instanzmethode . es ist ein nicht statisch Methode, die in der Klasse definiert ist. Bevor Sie die Instanzmethode aufrufen oder aufrufen, müssen Sie ein Objekt ihrer Klasse erstellen. Sehen wir uns ein Beispiel einer Instanzmethode an.

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

Ausgabe:

 The sum is: 25 

Es gibt zwei Arten von Instanzmethoden:

    Zugriffsmethode Mutator-Methode

Zugriffsmethode: Die Methode(n), die die Instanzvariable(n) liest(en), wird(n) als Zugriffsmethode bezeichnet. Wir können es leicht identifizieren, weil der Methode das Wort vorangestellt ist erhalten . Es ist auch bekannt als Getter . Es gibt den Wert des privaten Felds zurück. Es wird verwendet, um den Wert des privaten Felds zu ermitteln.

Beispiel

 public int getId() { return Id; } 

Mutator-Methode: Die Methode(n) lesen die Instanzvariable(n) und ändern auch die Werte. Wir können es leicht identifizieren, da der Methode das Wort vorangestellt ist Satz . Es ist auch bekannt als Setter oder Modifikatoren . Es gibt nichts zurück. Es akzeptiert einen Parameter desselben Datentyps, der vom Feld abhängt. Es wird verwendet, um den Wert des privaten Felds festzulegen.

Beispiel

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

Beispiel einer Accessor- und Mutator-Methode

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

Abstrakte Methode

Die Methode, die keinen Methodenkörper hat, wird als abstrakte Methode bezeichnet. Mit anderen Worten: Ohne Implementierung spricht man von einer abstrakten Methode. Es wird immer im angegeben abstrakte Klasse . Das bedeutet, dass die Klasse selbst abstrakt sein muss, wenn sie über eine abstrakte Methode verfügt. Um eine abstrakte Methode zu erstellen, verwenden wir das Schlüsselwort abstrakt .

Syntax

 abstract void method_name(); 

Beispiel einer abstrakten Methode

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

Ausgabe:

 Abstract method... 

Fabrikmethode

Es handelt sich um eine Methode, die ein Objekt an die Klasse zurückgibt, zu der es gehört. Alle statischen Methoden sind Factory-Methoden. Zum Beispiel, NumberFormat obj = NumberFormat.getNumberInstance();