Video

Parameter von Methoden

Parameter beeinflussen alle Programme, die du schreibst und können dir das Programmieren um einiges erleichtern. Wie das funktioniert, erfährst du in diesem Beitrag.

Inhaltsübersicht

Übergabe von Daten an Methoden mittels Parameter

Parameter hast du bestimmt schon mal im Programmcode gesehen oder sogar selbst benutzt. Spätestens als du mit der Klasse String und einem Stringobjekt experimentiert hast, solltest du schon auf Parameter gestoßen sein.

Aber was genau ist eigentlich ein Parameter? Ein Parameter enthält Daten, die man über die runden Klammern beim Methodenaufruf an die Methode selbst übergeben kann. Dieses Vorgehen ist sehr wichtig, da sich Methoden außerhalb der main-Methode befinden und somit keinen Zugriff auf lokale Daten haben, die du in der main-Methode initialisiert hast. Damit also andere Methoden mit deinen Daten arbeiten können, brauchen sie die nötigen Parameter.

Das kannst du dir in etwa so vorstellen: Du rufst zum Beispiel einen Pizzaservice an, um eine Pizza nach Hause zu bestellen. Nun muss der Service aber noch wissen, wo du wohnst. Dafür musst du ihm während des Telefonats genügend Informationen mitteilen, damit deine Pizza bei dir ankommt.

direkt ins Video springen
Bestellung beim Pizzaservice

Diesen Service kannst du dir als eine Methode vorstellen. Du rufst die Methode auf und sie macht ihren Job. Manche Methoden brauchen aber noch extra Daten, wenn sie aufgerufen werden, damit sie mit diesem Wissen arbeiten können. Und genau hier kommen die Parameter ins Spiel.

Bei jeder Methodendeklaration muss angegeben werden, wie viele Parameter diese Methode beim Aufruf bekommt. Dabei ist es egal ob sie einen, zwei, zehn oder gar keinen Parameter hat. Hauptsache sie bekommt alle Daten, die sie benötigt.

direkt ins Video springen
Relevante Parameter für die Bestellung

Am besten schauen wir uns ein Beispiel dazu an:

Parameter von Methoden – Beispiele

Hier siehst du eine void-Methode, also eine Methode, die keinen Wert zurückgibt. Diese Methode soll irgendetwas machen. Was genau sie macht, ist im Moment nicht von Bedeutung. Wichtig sind die Parameter in den runden Klammern.

direkt ins Video springen
1. Beispiel: void-Methode

In diesem Beispiel werden drei primitive Datentypen als Parameter in der Methode angegeben. Ein boolean, ein long und ein char Datentyp. Alle Datentypen wurden schon mit einem Namen deklariert. Dabei musst du dich aber nicht auf die primitiven Datentypen beschränken. Wenn du möchtest, kannst du auch ganze Objekte in Parametern deklarieren. Initialisieren darf man sie in den Parametern der Methodendeklaration jedoch noch nicht. Dieser Schritt wird erst beim Methodenaufruf gemacht.

Schauen wir uns dazu ein weiteres Beispiel an:

direkt ins Video springen
2. Beispiel: Methode zur Berechnung der Differenz zweier Werte

Dafür benutzen wir eine Methode, die die Differenz zweier Werte berechnen soll und als double zurückgibt. Damit sollte dir klar sein, dass die Methode beim Aufruf zwei Werte braucht, mit denen sie arbeiten kann.

Also erweitern wir unseren Code mit dem Aufrufen der Differenz-Methode in der main-Methode.

direkt ins Video springen
2. Beispiel: Erweiterung des Codes

 „diff“-Methode und „difference“-Variable

Wie wir vorhin schon festgestellt haben, handelt es sich bei „diff“ um eine Methode, die einen double Wert zurückgibt. Deswegen speichern wir den Wert, den die Methode zurückgibt, direkt mittels Zuweisungsanweisung in der Variable „difference“.

direkt ins Video springen
Speicherung des Wertes in der Variable „difference“

Aber was für ein Wert steckt nun in der Variable „difference“? Das ist ganz einfach. Wir wissen ja schon, dass die Methode x minus y berechnet. Außerdem haben wir in der Methodendeklaration angegeben, dass diese Methode zwei Werte übergeben bekommt, und zwar x und y. Beim Methodenaufruf in der main-Methode initialisieren wir die beiden Variablen. Dabei bekommt x den Wert 10 und y den Wert 5. Also rechnet die Methode 10 minus 5. Damit ist das Ergebnis 5 und der Wert wird in der Variable „difference“ gespeichert.

direkt ins Video springen
Die Methode rechnet 10 – 5 aus und speichert den Wert in „difference“

Aber Achtung! Du musst immer darauf achten, in welcher Reihenfolge die Parameter von der Methodendeklaration angegeben sind und wie viele es sind. Denn solltest du beim Aufrufen der Methode „diff“ weniger oder mehr Parameter übergeben als verlangt, wird der Compiler einen Error ausgeben. Zusätzlich musst du darauf achten immer den richtigen Datentyp zu übergeben.

direkt ins Video springen
Die richtige Anzahl der Parameter und der korrekte Datentyp sind wichtig!

Wenn also ein double an der ersten Parameterstelle verlangt wird, dann darfst du an dieser Stelle nur Zahlen verwenden und nicht zum Beispiel ein „true“. Das geht nur wenn die Parameterstelle als boolean deklariert wurde.

direkt ins Video springen
double kann nur für Zahlen verwendet werden

Auch Übergabe von Variablen möglich

So, das sind alle Bedingungen auf die du achten musst. EINES solltest du aber noch wissen.

Du bist nicht darauf beschränkt WERTE beim Methodenaufruf zu übergeben. Du kannst auch Variablen übergeben. Denn wie wir wissen, speichern Variablen ja auch nur Werte.

Dafür haben wir zwei Variablen in der main-Methode deklariert und initialisiert. Sie besitzen zwar den gleichen Namen wie die Variablen in der diff-Methode. Da es sich aber um lokale Variablen handelt, sind diese somit nicht methodenübergreifend und es entstehen keine Errors. Diese Variablen können wir dann ganz einfach in den Methodenaufruf einbauen und bekommen das gleiche Ergebnis.

direkt ins Video springen
Lokale Variablen führen auch zum gleichen Ergebnis

Du fragst dich, warum dann eigentlich der ganze Aufwand? Wenn du dein Programm anpassbarer gestalten möchtest, ist die Verwendung von Variablen – wie wir es hier gemacht haben – hilfreich und oftmals sogar unumgänglich. Denn sie ermöglichen es dir, Parameter schnell und einfach zu ändern.

Jetzt sollten all deine offenen Fragen zur Nutzung von Parametern geklärt sein und du kannst wieder in Ruhe weiterprogrammieren. Viel Erfolg dabei!

Hallo, leider nutzt du einen AdBlocker.

Auf Studyflix bieten wir dir kostenlos hochwertige Bildung an. Dies können wir nur durch die Unterstützung unserer Werbepartner tun.

Schalte bitte deinen Adblocker für Studyflix aus oder füge uns zu deinen Ausnahmen hinzu. Das tut dir nicht weh und hilft uns weiter.

Danke!
Dein Studyflix-Team

Wenn du nicht weißt, wie du deinen Adblocker deaktivierst oder Studyflix zu den Ausnahmen hinzufügst, findest du hier eine kurze Anleitung. Bitte .