English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Java Grund教程

Java Flusskontrolle

Java Array

Java objektorientiert (I)

Java objektorientiert (II)

Java objektorientiert (III)

Java Ausnahmebehandlung

Java Liste (Liste)

Java Queue (Warteschlange)

Java Map-Kollektion

Java Set-Kollektion

Java Eingabe-Ausgabe (I/O)

Java Reader/Writer

Andere Themen von Java

Java Methode

In diesem Tutorial werden Sie mit Beispielen lernen, wie man in Java Methoden definiert und verwendet.

Was ist eine Methode?

In der Mathematik haben wir möglicherweise bereits Funktionen studiert. Zum Beispiel f(x) = x2x ist eine Funktion, die Quadratzahlen zurückgibt.

Wenn x = 2, dann f(2) = 4
Wenn x = 3, f(3) = 9
usw.

Gleichzeitig sind Funktionen in der Computerprogrammierung Codeblöcke, die bestimmte Aufgaben ausführen.

In der objektorientierten Programmierung ist das ein Begriff für Funktionen. Methoden sind mit Klassen verbunden und definieren das Verhalten der Klasse.

Stellen Sie sicher, dass Sie verstehen:Java Klassen und Objekte

Typen von Java-Methoden

Java hat zwei Arten von Methoden: nach benutzerdefinierten Methoden oder Methoden, die in der Standardbibliothek verfügbar sind.

  • Standardbibliotheksmethoden

  • benutzerdefinierte Methoden

Standardbibliotheksmethoden

 Standardbibliotheksmethoden sind in Java integrierte Methoden, die jederzeit verwendet werden können. Diese Standardbibliotheken erscheinen gemeinsam mit der Java-Klassensammlung (JCL) in den Java-Archivdateien (JVM und JRE).*.jar) enthalten.

Zum Beispiel:

  • print() - ist eine Methode von java.io.PrintStream. Die Methode print("…") gibt einen String in Anführungsstrichen aus.

  • sqrt() -  ist eine Methode aus dem Mathematikunterricht. Sie gibt die Quadratwurzel einer Zahl zurück.

Dies ist ein Beispiel, das zeigt, wie es funktioniert:

public class Main {}}
    public static void main(String[] args) {
    
        //Verwenden Sie die sqrt()-Methode
        System.out.print("4Die Quadratwurzel ist: " + Math.sqrt(4));
    }
}

Ausgabe:

4Die Quadratwurzel ist: 2.0

benutzerdefinierte Methoden

Wir können auch Methoden erstellen, die wir selbst auswählen, um bestimmte Aufgaben auszuführen. Diese Methode wird als benutzerdefinierte Methode bezeichnet.

Wie erstellt man benutzerdefinierte Methoden?

Dies ist die Methode, wie man Methoden in Java erstellt:

public static void myMethod() {
    System.out.println("meine Funktion");
}

Hier erstellen wir eine Methode namens myMethod(). Wir können sehen, dass wir public, static und void vor dem Methodennamen verwenden.

  • public - Zugriffsmodifikator. Dies bedeutet, dass auf die Methode von überall aus zugegriffen werden kann. Für weitere Informationen besuchen SieJava Zugriffsmodifikatoren

  • static - Dies bedeutet, dass auf die Methode ohne jegliches Objekt zugegriffen werden kann. Für weitere Informationen besuchen SieJava Static Schlüsselwort

  • void - Dies bedeutet, dass die Methode keinen Wert zurückgibt. Wir werden dies in einem späteren Teil dieses Tutorials weiter behandeln.

Dies ist ein einfaches Beispiel, wie man Methoden erstellt. Der vollständige Syntax der Methodendefinition in Java lautet jedoch:

modifier static returnType nameOfMethod (parameters) {
    // method body
}

Hier,

  • modifier - Es definiert den Zugriff auf den Zugriff auf Methoden wie öffentliche Methoden, private Methoden usw.

  • static - Wenn der Schlüsselwort static verwendet wird, kann auf ihn ohne die Erstellung eines Objekts zugegriffen werden.
    Beispielsweise ist die Methode sqrt() der Standardklasse Math statisch. Daher können wir Math.sqrt() direkt aufrufen, ohne eine Instanz der Klasse Math zu erstellen.

  • returnType - Es gibt an, welchen Typ der Methode der Rückgabewert hat. Zum Beispiel, wenn der Rückgabetyp der Methode int ist, gibt sie einen Ganzzahlwert zurück.
    Eine Methode, die ursprüngliche Datentypen (int, float, double usw.) sowie native Objekte (String, Map, List usw.) oder jede andere eingebettete und benutzerdefinierte Objekte zurückgeben kann.
    Wenn die Methode keinen Wert zurückgibt, ist ihr Rückgabetyp void.

  • nameOfMethod - Es ist einIdentifier,um auf eine spezifische Methode im Programm zu verweisen.
    Wir können der Methode jeden Namen geben. Es ist jedoch eine gängigere Praxis, sie nach der Aufgabe zu benennen, die sie ausführt. Zum Beispiel calculateArea(),display() usw.

  • parameters (arguments) - Dies sind die Werte, die an die Methode übergeben werden. Wir können eine beliebige Anzahl von Parametern an die Methode übergeben.

  • method body - Es beinhaltet Programmiersätze, die bestimmte Aufgaben ausführen. Der Methodenkörper ist in Klammern { } enthalten.

    Wie ruft man eine Java-Methode auf?

    Nun, da wir wissen, wie man Methoden definiert, müssen wir lernen, wie man sie verwendet. Dafür müssen wir die Methode aufrufen. Hier ist, wie man das macht

    myMethod();

    Dieser Ausdruck ruft die先前声明的方法myMethod().

    Flussdiagramm der Methodenaufruf-Workflow in Java
    1.  Beim Ausführen des Programmcode wird im Code myFunction() getroffen.

    2.  Dann wird zur Methode myFunction() weitergeleitet und der Code im Methodenkörper ausgeführt.

    3.  Nachdem der Methodenkörper ausgeführt wurde, kehrt das Programm in seinen ursprünglichen Zustand zurück und führt nach dem Methodenaufruf den nächsten Befehl aus.

    Beispiel: Java-Methode

    Lassen Sie uns sehen, wie Methoden in Java-Programmen verwendet werden.

    class Main {
        public static void main(String[] args) {
            System.out.println("Es wird eine Art von Methode begegnet.");
            //调用方法
            myMethod();
            System.out.println("Die Methode wurde erfolgreich ausgeführt!");
        }
        // Methodendefinition
        private static void myMethod(){
            System.out.println("Von innen heraus von myMethod() aus gedruckt!");
        }
    }

    Ausgabe:

    Es wird eine Art von Methode begegnet.
    Von innen heraus von myMethod() aus gedruckt!
    Die Methode wurde erfolgreich ausgeführt!

    Im obigen Programm haben wir eine Methode namens myMethod(). Diese Methode akzeptiert keine Parameter. Ebenso hat die Methode den Rückgabetyp void (was bedeutet, dass keine Werte zurückgegeben werden).

    In diesem Fall ist die Methode static. Daher haben wir die Methode ohne Erstellen eines Objekts der Klasse aufgerufen.

    Betrachten wir noch ein Beispiel

    class Main {
        public static void main(String[] args) {
            //Erstellen eines Objekts der Klasse Output
            Output obj = new Output();
            System.out.println("Es wird eine Methode begegnet.");
            //Aufruf von myMethod() der Klasse Output
            obj.myMethod();
            System.out.println("Die Methode wurde erfolgreich ausgeführt!");
        }
    }
    class Output {
      
        //public: Diese Methode kann von außen aufgerufen werden
        public void myMethod() {
            System.out.println("Von innen heraus von myMethod() aus gedruckt.");
        }
    }

    Ausgabe:

    Es wird eine Methode begegnet.
    Von innen heraus von myMethod() aus gedruckt.
    Die Methode wurde erfolgreich ausgeführt!

    Im obigen Beispiel haben wir eine Methode namens myMethod() erstellt. Diese Methode befindet sich in der Klasse Output.

    Da die Methode nicht static ist, wird das Objekt der Klasse obj verwendet, um diese Methode aufzurufen.

    obj.myMethod();

    Methodenparameter und Rückgabewert

    Wie bereits erwähnt, können Java-Methode null oder mehrere Parameter haben. Und sie können auch einige Werte zurückgeben.

    Beispiel: Rückgabewert der Methode

    Lassen Sie uns ein Beispiel für eine Methode mit Rückgabewert betrachten.

    class SquareMain {
        public static void main(String[] args) {
            int result;
            //Aufruf der Methode und Speicherung des Rückgabewerts
            result = square(); 
            System.out.println("10der Quadratwert ist: " + result);
        }
        public static int square() {
            //return 语句
            return 10 * 10;
        }
    }

    Ausgabe:

    10的平方值是: 100

    在以上程序中,我们创建了一个名为square()的方法。此方法不接受任何参数,并返回值为10 *10。

    在这里,我们提到的方法的返回类型为int。因此,该方法应始终返回整数值。

    返回值的方法的表示形式

    如我们所见,此方法的范围是有限的,因为它总是返回相同的值。现在,让我们修改上面的代码片段,以使它始终返回传递给该方法的任何整数的平方值,而不是始终返回10的平方值。

    示例:方法接受参数并返回值

    public class Main {}}
       
        public static void main(String[] args) {
            int result, n;
            
            n = 3;
            result = square(n);
            System.out.println("3的平方是: " + result);
            
            n = 4;
            result = square(n); 
            System.out.println("4的平方是: " + result);
        }
        // Methode
        static int square(int i) {
            return i * i;
        }
    }

    Ausgabe:

    3Quadrat ist: 9
    4Quadrat ist: 16

    在此,square()方法接受一个参数i并返回i的平方。返回的值存储在变量result中。

    在Java中传递参数并从方法中返回值

    如果我们传递任何其他数据类型,而不是int类型的值,则编译器将引发错误。这是因为Java是一种强类型语言。

     在方法调用期间传递给getSquare()方法的参数n称为实际参数。

    result = getSquare(n);

     方法定义接受的参数称为形式参数。形式参数的类型必须显式类型化。

    public static int square(int i) {...}

    我们还可以使用逗号将多个参数传递给Java方法。例如,

    public class Main {}}
        //Methodedefinition
        public static int getIntegerSum (int i, int j) {
            return i + j;
        }
        // Methodedefinition
        public static int multiplyInteger (int x, int y) {
            return x * y;
        }
        public static void main(String[] args) {
            //调用方法
            System.out.println("10 + 20 = " + getIntegerSum(10, 20));
            System.out.println("20 x 40 = " + multiplyInteger(20, 40));
        }
    }

    Ausgabe:

    10 + 20 = 30
    20 x 40 = 800

    注意:实际参数和形式参数的数据类型应匹配,即第一个实际参数的数据类型应与第一个形式参数的数据类型相匹配。同样,第二个实际参数的类型必须与第二个形式参数的类型相匹配,以此类推。

    使用方法的优点是什么?

    1.主要优点是代码可重用性。我们可以编写一次方法,并多次使用它。我们不必每次都重写整个代码。可以将其视为“einmal schreiben, mehrmals wiederverwenden”。例如,

    public class Main {}}
        //Methodedefinition
        private static int getSquare(int x) {
            return x * x;
        }
        public static void main(String[] args) {
            for (int i = 1; i <= 5; i++) {
                //Methodeaufruf
                int result = getSquare(i);
                System.out.println("" + i + "Der Quadratwert von " + result);
            }
        }
    }

    Ausgabe:

    1 Quadrat ist: 1
    2 Quadrat ist: 4
    3 Quadrat ist: 9
    4 Quadrat ist: 16
    5 Quadrat ist: 25

     Im obigen Programm haben wir eine Methode namens getSquare() erstellt, um die Quadratwurzel eines Ziffernwertes zu berechnen. Hier wird mit demselben Verfahren die Quadratwurzel eines Ziffernwertes berechnet, der kleiner ist als6der Zahlensquarate.

     Daher verwenden wir denselben Methoden

    Methode2Macht den CodeLesbarer,Einfacherer DebuggingBeispielsweise ist die Methode getSquare() sehr lesbar, daher können wir erkennen, dass diese Methode die Quadratwurzel eines Ziffernwertes berechnet.