Шукаєте відповіді та рішення тестів для SEW2a 1xHIT Methoden? Перегляньте нашу велику колекцію перевірених відповідей для SEW2a 1xHIT Methoden в elearning.tgm.ac.at.
Отримайте миттєвий доступ до точних відповідей та детальних пояснень для питань вашого курсу. Наша платформа, створена спільнотою, допомагає студентам досягати успіху!
Gegeben ist die Klasse mit der Methode aus den vorigen beiden Übungen (die Methode ist in der gegebenen Klasse definiert):
Ergänze die folgenden Aussagen, so dass sie für diese Methode zutreffen.
Die gegebene Methode ist in der Klasse definiert.
Der Name der Methode lautet .
Das Schlüsselwort in der API-Dokumentation dieser Methode zeigt an, dass es sich um eine
Klassenmethoden werden grundsätzlich mit .
aufgerufen.
Diese Methode wird daher konkret mit .
aufgerufen.
Der Parameter hat den Datentyp .
Daher wird als Parameter
Schreibe ein Beispiel für einen Aktualparameter hin, der für diesen Parameter eingesetzt werden kann. Der Beispielwert soll dem Wert für wahr entsprechen (Achte auf den Datentyp des Parameters)
Diese Methode benötigt
Der Rückgabetyp der Methode ist , deshalb muss auch die Auffangvariable den Typ haben.
Deklariere eine passende Auffangvariable mit dem Namen ergebnis
:
Schreibe einen Aufruf für diese Methode hin, die das Ergebnis in die bereits deklarierte Variable namens ergebnis
speichert. Als Parameter soll ein Wert verwendet werden, der dem Wert wahr entspricht. Achte auf den Datentyp des Parameters.
parseDouble
Um die Ähnlichkeiten zwischen den unterschiedlichen parse-Methoden zu zeigen, wird hier noch die API-Dokumentation der Methode der Klasse parseDouble
Double
aus dem Paket java.lang
angegeben:
Die Antworten auf die Überlegungen zum Aufruf ergeben sie daher ähnlich:
Überprüfen, ob es sich um eine Klassenmethode handelt: Ist das Schlüsselwort static in der Methodendokumentation vorhanden? Bei dieser Methode: Ja, d.h. es ist eine Klassenmethode, damit hat der Aufruf die Struktur:Double.parseDouble
Für jeden Formalparameter in der Methodendefinition muss ein Aktualparameter (= aktueller Wert) festgelegt werden:
1 Parameter vom Typ , der in eine Fließkommazahl umgewandelt werden kann und dafür nur aus Ziffern, einem Punkt als Dezimaltrennzeichen und ev. einem Vorzeichen besteht, z.B.: "37.8" oder ein entsprechender Wert in einer Eingabe-Variablen.String
: irgendein String
Überprüfen, ob eine Auffangvariable benötigt wird (Rückgabetyp ≠ Bei dieser Methode: , d.h. es wird eine Auffangvariable vom Typvoid
) oder nicht (Rückgabetyp = void
):Welchen Rückgabetyp hat die Methode?double
double
benötigt
Ein möglicher Aufruf könnte z.B. folgendermaßen aussehen:
Die Methode für Umwandlung von String
in double
ist in der Klasse definiert.
Der Name dieser Methode lautet .
Das Schlüsselwort in der API-Dokumentation dieser Methode zeigt an, dass es sich um eine
Klassenmethoden werden grundsätzlich mit .
aufgerufen.
Diese Methode wird daher konkret mit .
aufgerufen.
Für den einzigen Parameter wird
Diese Methode benötigt
Der Rückgabetyp der Methode ist , deshalb muss auch die Auffangvariable den Typ haben.
parseInt
Die Methode übernimmt einen als Parameter übergebenen -Wert um, und gibt diesen zurück. Sie ist folgendermaßen aufgebaut:parseInt
String
-Wert, wandelt die darin enthaltene Zahl in einen int
Für den Aufruf müssen wieder die bei den Eingabe-Methoden besprochenen Punkte überlegt werden:
Überprüfen, ob es sich um eine Klassenmethode handelt: Ist das Schlüsselwort static in der Methodendokumentation vorhanden? Bei dieser Methode: Ja, d.h. es ist eine Klassenmethode, damit hat der Aufruf die Struktur:Integer.parseInt
Für jeden Formalparameter in der Methodendefinition muss ein Aktualparameter (= aktueller Wert) festgelegt werden:
1 Parameter vom Typ , der in eine ganze Zahl umgewandelt werden kann und dafür nur aus Ziffern und ev. einem Vorzeichen besteht, z.B.: "5242" oder ein entsprechender Wert in einer Eingabe-Variablen.String
: irgendein String
Überprüfen, ob eine Auffangvariable benötigt wird (Rückgabetyp ≠ Bei dieser Methode: , d.h. es wird eine Auffangvariable vom Typvoid
) oder nicht (Rückgabetyp = void
):Welchen Rückgabetyp hat die Methode?int
int
benötigt
Ein möglicher Aufruf könnte z.B. folgendermaßen aussehen:
Die Methode für Umwandlung von String
in int
ist in der Klasse definiert.
Der Name dieser Methode lautet .
Das Schlüsselwort in der API-Dokumentation dieser Methode zeigt an, dass es sich um eine
Klassenmethoden werden grundsätzlich mit .
aufgerufen.
Diese Methode wird daher konkret mit .
aufgerufen.
Für den einzigen Parameter wird
Diese Methode benötigt
Der Rückgabetyp der Methode ist , deshalb muss auch die Auffangvariable den Typ haben.
Die für Benutzereingaben benützte Methode der Klasse zurückgeben. Das ist zum Beispiel problematisch, wenn man eine Zahl einlesen möchte, mit der gerechnet oder die in einem Vergleich verwendet werden soll. Dazu müsste diese Zahl auch als einfacher Zahlendatentyp (z.B. int oder double) vorliegen.showInputDialog
JOptionPane
kann nur String
-Werte
Auch für dieses Problem gibt es in der Java-API Methoden für das Umwandlen von ... einwickeln) der primitiven Datentypen. Nachdem in Java alle Methoden in Klassen organisiert sein müssen, dienen die Wrapper-Klassen u.a. als Container für Methoden die den einfachen Datentypen zugeordnet sind.String
in einen anderen Datentyp. Sie befinden sich in den Wrapper-Klassen (von wrap
Die Umwandlungsmethoden selbst beginnen mit dem Wort parse (= "Text analysieren") gefolgt vom Datentyp, in den umgewandelt werden soll. Die folgende Tabelle bietet einen kleinen Auszug:
Ziel-Datentyp | Wrapper-Klasse | parse-Methode |
---|---|---|
int | Integer | parseInt |
double | Double | parseDouble |
boolean | Boolean | parseBoolean |
char | Character | keine parse-Methode |
Als Beispiel wird hier die Methode genauer vorgestellt. Die anderen parse-Methoden sind ganz ähnlich aufgebaut. Die Klasse , wie ein Blick in die API-Dokumentation verrät:parseInt
der Klasse Integer
Integer
befindet sich im Paket java.lang
java.lang
Das Paket, in dem sich die Klasse befindet, ist das Kernpaket der Programmiersprache Java. Die Bezeichnung leitet sich aus der Abkürzung des englischen Begriffs ab. Da dieses Paket die zentralen Klassen von Java enthält, müssen diese nicht vom Programm importiert werden. Sie sind . In diesem Package sind auch die Klassen für die Konsolen-Ausgabe enthalten, die schon bisher ohne verwendet wurden. Ebenfalls darin enthalten sind alle Wrapper-Klassen.Integer
java.lang
String
und System
import
Die Methode showInputDialog
der Klasse JOptionPane
gibt immer den Datentyp zurück.
Um einen anderen Datentyp z.B. zum Berechnen von Werte zu bekommen muss der String
-Wert
Für das Umwandeln von String
-Werten in einen einfachen Datentyp gibt es passende Methoden in den -Klassen.
Die Umwandlungsmethoden in den Wrapper-Klassen beginnen alle mit dem Wort (für Text analysieren}
Die Wrapper-Klasse für den Datentyp int
heißt .
Die Methode zum Umwandeln String
in int
heißt .
Die Klasse Integer
befindet sich im Paket
Dieses Paket ist besonders, weil Klassen aus diesem Paket
Weitere Klassen, die in diesem java.lang
-Package sind, und daher nicht vom Programm importiert werden müssen, sind:
showMessageDialog
Im obigen Beispiel erfolgt die Ausgabe noch über die Konsole. Die Klasse -Fenster. Sie heißt . Die einfachste Variante ist folgendermaßen aufgebaut:JOptionPane
besitzt aber auch Methoden für ein Ausgabe-DialogshowMessageDialog
Wer die -Methode vergleicht, wird feststellen, dass abgesehen vom Namen nur der Rückgabetyp anders ist. Dementsprechend laufen die Überlegungen zum Methodenaufruf ähnlich ab:showMessageDialog
-Methode mit der showInputDialog
Überprüfen, ob es sich um eine Klassenmethode handelt: Ist das Schlüsselwort static in der Methodendokumentation vorhanden? Bei dieser Methode: Ja, d.h. es ist eine Klassenmethode, damit hat der Aufruf die Struktur:JOptionPane.showMessageDialog
Für jeden Formalparameter in der Methodendefinition muss ein Aktualparameter (= aktueller Wert) festgelegt werden:
Erster Parameter: dieser ist vom Objekttyp (erkennbar am großen Anfangsbuchstaben). Hier geben wir den Wert (ausgeschrieben, nicht die Ziffer 0), der bei Objekten als Ersatz für "nichts" verwendet wird, an. Das zeigt Java an, dass dieses Dialog-Fenster zu keiner größeren übergeordneten grafischen Oberfläche dazu gehört.Component
Zweiter Parameter: Ebenfalls ein Objekttyp, der dafür steht, dass man irgendeine beliebige Nachricht als Objekt angegeben kann. Nachdem String ein Objektdatentyp ist, können auch Variablen oder Literale vom Typ String dafür verwendet werden, z.B:"Eingabe:" + eingabe
Überprüfen, ob eine Auffangvariable benötigt wird (Rückgabetyp ≠ In dieser Methode: benötigtvoid
) oder nicht (Rückgabetyp = void
):Welchen Rückgabetyp hat die Methode?void
, d.h. es wird keine Auffangvariable
Die Methode für die grafikbasierten Ausgabedialoge ist in der Klasse definiert.
Der Name der Methode für die grafikbasierten Ausgabedialoge lautet .
Das Schlüsselwort in der API-Dokumentation dieser Methode zeigt an, dass es sich um eine
Klassenmethoden werden grundsätzlich mit .
aufgerufen.
Diese Methode wird daher konkret mit .
aufgerufen.
Für den ersten Parameter werden wir derzeit immer den Wert einsetzen, weil wir keine selbst programmierte grafische Oberfläche haben, mit der wir unseren Eingabedialog verbinden wollen.
Als zweiter Parameter wird
Diese Methode benötigt
Die Java-API besteht aus sehr vielen Klassen, die zur besseren Übersicht in der Klassenliste alphabetisch aufgelistet sind. Die Klasse mit den Eingabe-Methoden heißt kann man sich durch Anklicken des Klassennamens anzeigen lassen. Die Klassenansicht im Hauptbereich gliedert sich auch wieder in einzelne Teile:JOptionPane
. Den Aufbau der Klasse JOptionPane
... und ein gutes Stück weiter unten ...
Paketname : Der Paketname ist wichtig, um die Klasse im Programm importieren zu können. Jede Klasse, die nicht im Standard-Paket von Java importjava.lang
und nicht im eigenen Paket ist, muss mit
importiert werden.
Klassenname : Klassenmethoden müssen über den Klassennamen aufgerufen werden
Vererbungshierarchie: von welchen Klassen ist diese Klasse abgeleitet und welche Interfaces werden implementiert (erst bei Objektorientierung wichtig)
Kopfzeile der Klasse : enthält noch einmal den Klassennamen. Zusätzlich sind auch hier in einer zweiten Zeile die Vererbung und eventuelle Interfaces angegeben (erst bei Objektorientierung wichtig)
Beschreibung der Klasse : Hier wird allgemein die Funktionalität der Klasse beschrieben
Kurzbeschreibung der Methoden : enthält den Zugriffsmodifikator (falls eine Methode diesen hat) den Rückgabetyp, Klassenname, Parameterliste und den ersten Satz der Methodenbeschreibung.static
Genaue Beschreibung der Methoden : Wenn man auf einen Methodennamen klickt oder weiter hinunter schaut, kommt man zur Detailbeschreibung der Methoden. Diese enthält die genaue Kopfzeile der Methode und alle Informationen, die im Dokumentationskommentar angegeben wurden.
Nach den Darstellungsoptionen und den Quicklinks ist oben der Name des angegeben.
Der Packagename ist wichtig, damit die Klasse werden kann.
Um eine Klasse zu importieren schreibt man .
;
Unter dem Packagenamen folgt der Name der
Unter der Klassenkopfzeile ist noch eine allgemeine der Klasse angegeben.
Die Kurzbeschreibung der Methoden zeigt folgende Informationen
Die Detailbeschreibung der Methoden zeigt folgende Informationen
Diese Prinzipien gelten nicht nur für die eigenen Methoden und die Methoden der Klasse Input, sondern auch für die Methoden der Standard Java- = Programmierschnittstelle). Die Java-API ist die Java Klassen- und Methoden-Bibliothek. Sie enthält viele fertig ausprogrammierte Methoden. Unglücklicherweise sind die Methoden zum Einlesen von der Konsole Objektmethoden und damit für uns derzeit nicht verwendbar. Aus diesem Grund haben wir für euch die Klasse geschrieben, welche dies vereinfachen soll. Wenn wir aber mit Hilfe der Java-API Werte einlesen wollen, dann können wir für den Anfang die grafikbasierten Ein- und Ausgabemethoden der Klasse verwenden, die wir in weiterer Folge vorstellen. Das Ziel soll aber sein, dass ihr grundsätzlich mit Methoden aus der API arbeiten lernt und den Aufbau der API-Dokumentation kennt.Input
JOptionPane
Wenn man wissen möchte, wie man Methoden aus der API-Bibliothek verwenden kann, dann kann man sich am besten über die API-Dokumentation informieren. Diese kann entweder über die Google-Suche nach "Java 8 API" gleich online gelesen werden ( ), oder sie kann als zip-Datei heruntergeladen werden, damit man sie immer zur Verfügung hat (Google-Suche nach "Java 8 API download" -
Wenn man die zip-Version heruntergeladen hat, muss diese entpackt werden ("Alle Dateien extrahieren" in Windows), um einen Ordner namens docs mir vielen html-Dateien zu enthalten. Der Ausgangspunkt für das Starten der API-Dokumentation ist im Unterverzeichnis namens api die Datei index.html. Durch Doppelklick wird die API-Dokumentation als Offline-Webseite geöffnet.
Wenn man die Dokumentation gleich online liest, öffnet sich die gleiche Datei allerdings als online-Version. Diese Datei bzw. Webseite gliedert sich in 3 Bereiche:
Klassenliste: Auflistung aller Klassennamen
Hauptbereich: Inhalt der gerade gewählten Klasse / des gerade gewählten Packages/Paketes
Paketliste bzw. Package-Liste (nur bei größeren Bibliotheken): wird über der Liste der Klassennamen angezeigt und enthält alle vorhandenen Packages/Paketes (ein Package ist wie ein Ordner eine Organisationseinheit, in der mehrere inhaltlich zusammengehörende Klassen zusammengefasst werden).
Die Bibliothek in der viele vorgefertigte Klassen und Methoden verfügbar sind, nennt man Java- (kurz für Application Programming Interface)
Diese Klassen und Methoden sind in der API- beschrieben. Diese besteht aus HTML-Dokumenten für jede Klasse.
Man kann sich die API-Dokumentation offline als .zip-Datei herunterladen. Damit man sie verwenden kann, muss man sie zuerst .
Zum Starten wählt man die Datei aus dem Ordner docs\api
.
Der Start-Bildschirm gliedert sich in 3 Bereiche:
Wie wir in den vorigen Kapiteln gelernt haben, ist eine Methode ein Programmteil, der mehrere Anweisungen unter einem Namen zusammenfasst. Doch um Methoden noch besser zu verstehen, betrachten wir sie noch einmal von außen.
Methoden kann man sich als kleine "Hilfsmaschinen" vorstellen, die wir verwenden können, um unser Programm umsetzen zu können. Zum Beispiel können wir die -Methode verwenden, um den Benutzer nach einer Eingabe von der Konsole zu fragen.readInt
- oder readLine
Um ihre Arbeit zu machen, benötigt die Methode Daten, mit deren Hilfe sie ihre Aufgabe erledigen kann: die . Viele Methoden geben auch ein Ergebnis zurück: den . Und damit man überhaupt die richtige Methode (= die richtige "Maschine") auswählt, hat jede Methode auch noch einen
Die Methode z.B. braucht einen Text zum Anzeigen als Parameter und liefert uns die Zahl, die der Benutzer eingegeben hat, als Rückgabewert. Eine Methode kann viele Parameter haben, aber immer nur einen Rückgabewert.readInt
Nachdem es in Java viele Methoden gibt, genügt es nicht, einfach nur ihren Namen zu kennen. Es gibt immer wieder Methoden, die gleich heißen. Aber auch wenn der Methodenname eindeutig wäre, würde Java eine Methode, die nur mit ihrem Namen aufgerufen wird im Allgemeinen nicht finden.
Methoden gehören immer zu einer Klasse und damit man sie richtig aufrufen (=verwenden) kann, muss man auch den wissen. Man kann sich die Klassen also als Regal vorstellen, in dem die entsprechenden Maschinen aufgestellt sind. Alle Klassen sind zusätzlich noch in ) organisiert. Daher muss man bevor man die Klasse angeben kann, das zugehörige Package importieren. Die Packages entsprechen also am ehesten Raum-Bezeichnungen, in denen sich die Regale befinden.
Wenn man also den Klassennamen weiß und die Klasse mit Hilfe des zugehörigen Packages auch wurde, kann man die Methode aufrufen. Wie genau der Aufruf funktioniert, hängt von der Art bzw. Kategorie der Methode ab:
Klassenmethoden werden direkt mit Hilfe des Klassennamens aufgerufen (deshalb auch der Name
Objektmethoden werden mit Hilfe einer Objektreferenz , die erst aus dieser Klasse erzeugt werden muss, aufgerufen (deshalb der Name methode). Objektmethoden werden aber in diesem Kapitel nicht weiter besprochen.
Für Klassenmethoden ist also der Aufrufname folgendermaßen aufgebaut:
Für die Methode readInt
aus der Klasse Input
sieht dies z.B. so aus:
Input.readInt
Methoden sind innerhalb von definiert.
Die Klassen wiederum sind in organisiert.
Damit eine Klasse verwendet werden kann, muss sie erst zusammen mit dem Package werden (außer sie befindet sich im gleichen Package bzw. Ordner wie die Klasse, die sie verwenden möchte).
Es gibt 2 Kategorien von Methoden:
Klassenmethoden werden mit aufgerufen.
Die Methode namens readChar
aus der Klasse Input
wird also mit aufgerufen.
Damit die Methoden ihre Arbeit machen können, kann man den Methoden Daten hinein übergeben. Man nennt diese Werte
Methoden können auch Ergebnisse heraus geben. Man nennt diese Ergebnisse .
Eine Methode kann
Welchen Datentyp braucht eine Auffangvariable, die das Ergebnis von folgender Methode speichern soll:
public static boolean methode() {
Welchen Datentyp braucht eine Auffangvariable, die das Ergebnis von folgender Methode speichern soll:
public static double methode() {
Отримайте необмежений доступ до відповідей на екзаменаційні питання - встановіть розширення Crowdly зараз!