Diese Lektion soll an Hand der schon bekannten Aufrufe statischer Methoden einige Begriffe einführen, die wir etwas später bei der Behandlung neuer Themen einsetzen werden.
Verben
Der eigentliche Name einer Methode wird hier auch als Verb jener Methoden bezeichnet.
Beispielsweise ist das Verb der Methode »java.lang.Math.random()« der Bezeichner »random«.
Verbaufrufe
Wir erinnern hier an die Produktionsregel eines Aufrufs.
Dabei ist es entscheidend, daß bei einem Verbaufruf vor der Klammer auf »(« nur ein Bezeichner, aber kein Name, steht. Ein Bezeicher darf – im Gegensatz zu einem Namen – keine Punkte enthalten.
Beispiel für einen Verbaufruf
random()
Beispiel für einen Aufruf, der aber kein Verbaufruf ist
java.lang.Math.random()
Jeder Aufruf endet mit einem Verbaufruf.
Aufrufe mit Typnamen
Ein Verbaufruf alleine ist in manchen Fällen noch zu unbestimmt für eine Auswertung.
Er benötigt dann unter Umständen noch einen mit einem Punkte abgetrennten Typnamenvor dem Verbaufruf. Der Aufruf »java.lang.Thread.dumpStack()« enthält beispielsweise den Typnamen »java.lang.Thread« und den Verbaufruf »dumpStack()«.
Aufruf einer statischen Methode mit Typnamen (Syntaxdiagramm) ::=
Eine mit einem Punkt abgetrennte Angabe in einem Aufruf, die vor einem Verbaufruf steht, wird vom Java-Compiler auch Kontext genannt. (Nach dem Kontext im Sinne eines „umgebenden“ Textes, der die Bedeutung eines Textes eingrenzen kann.)
Einen Aufruf, der einen mit einem Punkt ».« abgetrennten Typnamen vor dem Verb (dem einfachen Namen der Methode) enthält, nennen wir auch einen Aufruf mit Kontext. Ein Aufruf mit Kontext enthält also Punkte in dem Namen vor der Klammer, wie etwa bei dem Aufruf »java.lang.Thread.dumpStack()«. Ein komplexer Aufruf ist ein Teil des Quelltexts.
Aufruf einer statischen Methode (Syntaxdiagramm) ::=
Der Aufruf »java.lang.Thread.dumpStack()« enthält beispielsweise den Kontext »java.lang.Thread« und den Verbaufruf »dumpStack()«.
Den Punkt zwischen Kontext und Verbaufruf, nennen wir hier auch Kontextpunkt. Es handelt sich beim Kontextpunkt stets um den letzten Punkt vor der Klammer eines Aufrufs mit Kontext.
Man sagt auch, daß der Verbaufruf mit dem angegebenen Kontext oder in dem angegebenen Kontext erfolge. Beispielsweise wird in dem obigen Beispiel »dumpStack()« im Kontext »java.lang.Thread« aufgerufen.
Man sagt auch, daß mit dem obigen Aufruf die Methode »dumpStack()« aus dem Typ »java.lang.Thread« aufgerufen werde. Ein Kontext ist ein Teil des Quelltexts.
Enthaltensein
Wenn ein Verbaufruf in einem bestimmten Kontext möglich ist (also ohne Fehlermeldung kompiliert und ausgeführt wird), dann sagen wir, daß dieser Kontext eine zum Aufruf passende Methode enthalte.
? Der Kontext enthält eine zum Aufruf passende Methode
java.lang.Thread . dumpStack()
? Der Kontext enthält keine zum Aufruf passende Methode
java.lang.Math . dumpStack()
Eine Typ als Kontext enthält eine zu einem Verbaufruf passende Methode dann, wenn es eine statische Methode in diesem Typ gibt, die zu dem Aufruf paßt.
In der Dokumentation des Typs »java.lang.Thread« findet man beispielsweise eine zum Verbaufruf »dumpStack()« passende Methode.
Dokumentation von »java.lang.Math.random()« (gekürzt, vereinfacht und übersetzt)
Modul java.base
Packet java.lang
Klasse Thread
Methodenzusammenfassung
static void dumpStack()
Druckt einen Stapelbericht für das laufende Programm.
In der Dokumentation des Typs »java.lang.Math« findet man aber keine zum Verbaufruf »dumpStack()« passende Methode. Daher enthält der Kontext »java.lang.Math« keine zum Verbaufruf »dumpStack()« passende Methode.
Beispiele für Aufrufe statischer Methoden
Die folgende Tabelle zeigt einige Beispiele für Aufrufe statischer Methoden.
Die Frage, ob ein Kontext eine Methode enthält, die einen bestimmten Verbaufruf ermöglicht, kann durch Lesen der Dokumentation und des Quelltexts beantwortet werden.
Zusammenfassung
Ein Aufruf mit Kontext, der eine statischen Methode aufruft, wie »java.lang.Math.pow( 2.0, 3.0 )« besteht aus einem Kontexttyp, wie »java.lang.Math«, und einem Verbaufruf, wie »pow( 2.0, 3.0 )«, zu dem es im Kontexttyp eine passende Methode gibt.
Übungsfragen
? Bestandteile von Aufrufen
Was ist der Verbaufruf im Aufruf »java.lang.Math.random()«?
Was ist der Kontext im Aufruf »java.lang.Math.random()«?
? Enthaltensein von Methoden
Zu welchen der folgenden Verbaufrufe gibt es im Kontext »java.lang.Math« passende Methoden?
»rand()«
»random()«
»random( 6 )«
Übungsaufgaben
/ Aufrufe mit Kontext
Schreiben Sie einen Aufruf mit dem Kontext »java.lang.Math« und dem Verbaufruf »rint( 2 )«. (Der Aufruf sollte höchstens 24 Zeichen benötigen.)
Anmerkungen und Zitate*
Syntax eines Aufrufs einer statischen Methode *
Zitate aus der JLS, leicht umgestellt und vereinfacht:
Der Begriff „Kontext“ wird 2012 vom Standard-Java-Compiler aus dem JDK selber verwendet:
Main.java
public final class Main { public static void main( final java.lang.String[] args ) { java.io.PrintStream.println(); }}
Konsole
javac Main.java
Main.java:3: error: non-static method println() cannot be referenced from a static context { java.io.PrintStream.println(); }} ^ 1 error
(Main.java:3: Fehler: nicht-statische Methode println() kann nicht von statischem Kontext aus referenziert werden.)
Compiler-Fehlermeldung, 2012
Seiteninformationen und Impressum | Mitteilungsformular | "ram@zedat.fu-berlin.de" (ohne die Anführungszeichen) ist die Netzpostadresse von Stefan Ram. | Eine Verbindung zur Stefan-Ram-Startseite befindet
sich oben auf dieser Seite hinter dem Text "Stefan Ram".) |
Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten.
Diese Seite ist eine Veröffentlichung von Stefan Ram.
Schlüsselwörter zu dieser Seite/relevant keywords describing this page:
Stefan Ram Berlin slrprd slrprd stefanramberlin spellched stefanram721317 stefan_ram:721317
Komplexe Aufrufe statischer Methoden in Java
source, source code,sourcecode,
Programmier sprache java,
Java Programm Java Programmiersprache Java Sprache Java Programmierung
Programmieren in Java,
Die Programmiersprache Java
Javapgrammierung,
Java-Programmierung,
Java2, Java1.2, Java1.3, Java1.4, Java1.5,
Java 2, Java 1.2, Java 1.3, Java 1.4, Java 1.5, Java 1.6, Java 1.7, Java 1.8, Java 8, Java 1.9, Java 9, Java 1.10, Java 10, Tiger, Dolphin,
objektorientierte Programmierung,
Java sun,
,
Softwareentwicklung, Software-Entwicklung, Software Entwicklung,
Softwareprogrammierung, Software-Programmierung, Software Programmierung,
Softwareherstellung, Software-Herstellung, Software Herstellung,
Softwareerstellung, Software-Erstellung, Software Erstellung,
Softwareengineering, Software-Engineering, Software Engineering,
Softwareenginering, Software-Enginering, Software Enginering,
Softwaremethodik, Software-Methodik, Software Methodik,
Programmiermethodik, Programmier-Methodik, Programmier Methodik,
Softwaredidaktik, Software-Didaktik, Software Didaktik,
Methodik des Programmierens,
Didaktik des Programmierens,
Fachdidaktik des Programmierens, Fach-Didaktik des Programmierens,
Programmieren, Programmierung,
Computer Science, Informatik,
Informatik, Informationspädagogik, Informationspaedagogik,
Programmierer, programmieren, Quellcode, Quelltext, Quelle, Quellen,
Informatiker, Fachinformatiker, Entwickler, mit Stil, mit Stiel, mit Still,
,
Einführung, Einfuehrung, Einführungen, Einfuehrungen, eLearning-Modul, e-Learning-Modul, eLearning-Module, e-Learning-Module, Kurs Berlin, Kurse Berlin, Kursus, Vortrag, Vorträge, Vortraege, Lehrgang, Lehrgänge, Lehrgaenge, kostenloses Lehrmaterial, kostenlose Lehrmaterialien, Vorlesung, Vorlesungen, Unterrichtseinheit, Unterrichtseinheiten, kostenloses Unterrichtsmaterial im Internet, kostenlose Unterrichtsmaterialien im Internet, Ausbildung, Ausbildungen, für die Ausbildung, Fortbildung, Fortbildungen, Weiterbildung, Weiterbildungen, Schulung Berlin, Schulungen Berlin, Internetschulung, Webschulung, Kursunterlage, Kursunterlagen, trainer Berlin, Didaktik, Informatikunterricht, Primer, Skript FH, Skripte FH, Skriptum FH, Skripts FH, Script FH, Scripte FH, Scriptum FH, Scripts FH, howto, how-to, how to, Lehrbuch, Buch, Bücher, Buecher, Bericht, Crash Kurs Berlin, Crash-Kurs Berlin, Crashkurs Berlin, Report, Sachtext, Sachtexte, Übung, Übungen, Uebung, Uebungen, course, PbclevtugFgrsnaEnz,
lecture note, lecture notes, Tutorial, Tutor, Tutorium, Teacher, Lehrer Berlin, Trainer Berlin, Beratung Berlin, Anleitung zum, Anleitungen zum, Einführung, Einfuehrung, Einführungen, Einfuehrungen, Handbuch für, Handbücher, Handbuecher, Support, Diplomarbeit, Facharbeit, Hausarbeit, Hausarbeiten, Werk, Werke, Text, Übungsblatt, Uebungsblatt, Lösung, Loesung, Lösungen, Loesungen, Auflösung, Aufloesung, Auflösungen, Aufloesungen, Facharbeit, Facharbeiten, Forum, Training, manual, Folie, Folien, Lehrmittel, beratung,
Definition von, Allgemeine Erklärung, Allgemeine Erklaerung, Allgemeine Erklärungen, Allgemeine Erklaerung, Allgemeine Erklaerungen, Einfache Erklärung einfach, Einfache Erklaerung einfach, Einfache Erklärungen, Einfache Erklaerung, Einfache Erklaerungen, zum Thema, FAQ, FAQs, Konzept, Lernkurs, Lern-Kurs, Lernkurse, Lern-Kurse, eine kurze Erklärung, Begriff, Begriffe, Erklärung zu Begriffen, begriffbestimmung, begriffbestimmung, Begriffsbestimmung, Begriffserklärung, Begriffserklaerung, Wort, Worterklärung, Worterklaerung, Definition, Beispiel, Beispiele, Bedeutung, Bedeutungen, was bedeutet, Begriffsdefinition, für Anfänger, fuer Anfaenger, für Einsteiger, für Beginner, zum selber Lernen, handout, hand out, web based training,
WBT,
Net Based Training,
NBT,
computer based training,
CBT,
virtual learning environment,
virtual university,
für die Schule, Seminar, Seminare, Vorgehensweise, Pädagogik, Paedagogik, Akademie,
Onlineacademie,
Onlineakademie,
Wissen,
Unterrichtsvorbereitung für das Fach, Unterricht, für Lehrer, für Lehrerinnen, Referat,
Referate,
Hausaufgabe,
Hausaufgaben, Tip,
Tipp.
Tipps und Tricks,
Tips und Tricks, Methode,
Methoden,
Methodik, Funktion,
Funktionsweise,
Aufbau,
Prinzip,
Grundlage,
Grundlagen, Internetschulung,
Unterlage,
Unterlagen, Struktur,
Frage,
Fragen,
Antwort,
Antworten,
Schulunterricht,
zum erlernen,
was ist das?,
wie?,
lerne,
Onlineausbildung,
Onlinelehrgang,
Onlinekurs,
Onlinebuch,
Webbuch,
Academy,
Fachhochschule,
FH,
TFH,
Hochschule,
Universität,
Universitaet,
Uni,
Schule,
Berufsschule,
Gymnasium,
Erste Schritte mit,
Dozent,
Dozenten,
Zusammenfassung,
Übersicht,
Term,
Fachwort,
Fachbegriff,
Fachbegriffe,
Grundbegriff,
Grundbegriffe,
Lektion,
Lektionen,
Bedienungsanleitung,
Bedienungsanleitungen,
Spezialist,
Spezialisten,
Coaching,
Coach,
Fachbuch,
technologie,
Unterschied zwischen,
Unterschiede zwischen,
lehren,
unterrichten,
für das Studium,
für Studenten,
für Studentinnen,
für Studierende,
für Schüler,
für Schülerinnen,
Wie kann ich,
Wie kann man,
Hilfe,
selber,
erstellen,
Erstellung,
Beginner,
Online-Seminar,
Online-Kurs,
Online-Schulung,
ich,
gebrauchsanweisung,
gebrauchsanleitung,
Bedienungsanweisung,
Einweisung,
Kurzinfo,
Internet-Kurs,
Internet-Kurse,
Online-Training,
Intensiv,
Intensivkurs,
Vortragsreihe,
Präsentation,
Grundzüge,
Mitschrift,
Mitschriften,
Verständnis,
verstehen,
anwenden,
Hintergrundwissen,
Hintergrund,
Hintergründe,
content,
Funktionsprinzip,
Schritt für Schritt;
E-Learning;
elearning;
online learning;
Fernlehre,
Fernlehrgang,
Fernlehrgänge,
Referent,
Referenten,
Fernkurs,
Fernkurse,
Fernstudium,
Fernschule,
Fernuniversität,
Fernlehrer,
Denken,
Qualifizierungsmaßnahme,
Qualifizierung,
Qualifizierungen,
Volkshochschulkurs,
Volkshochschulkurse,
Internet-Learning-Plattform,
Online-Learning-Plattform,
E-Learning-Plattform,
Internetlearning-Plattform,
Onlinelearning-Plattform,
Elearning-Plattform,
jetzt,
Kochbuch,
einfach erklärt,
Kenntnis,
Kenntniss,
Kenntnisse,
deutsche Hilfe,
lernen und verstehen;
blended learning;
courseware,
Profi,
Profis,
professionell,
professionelle,
professionelles,
profesionell,
profesionelle,
profesionelles,
professionel,
gekonnt,
für Könner,
Grundkurs,
Leistungskurs,
Aufbaukurs,
Lehrtext,
Lehrtexte,
Fachtext,
Fachtexte,
Ausarbeitung,
distance learning,
Online Seminar,
distance education,
Online Tutorium,
Online Tutorien,
technology-based learning,
Computer based learning,
CBL,
Internet Based learning,
IBL,
Web based learning,
WBL,
online-learning,
OL,
online-training,
OT,
CAI,
Computer Assisted Instruction,
CUU,
Computerunterstützter Unterricht,
Computer-unterstützter Unterricht,
Know how,
Grundkenntnis,
Grundkenntnisse,
Kompetenz,
Schulungsunterlagen,
Insiderwissen,
Rat,
Lehrerinnen und Lehrer,
ABC,
Überblick,
Arbeitsblatt,
Sekundarstufe,
Oberstufe,
Material,
Materialien,
Unterrichtsentwurf,
Unterrichtsentwürfe,
Lerntip,
Lerntips,
Lerntipp,
Lerntipps,
ebook,
schnell lernen,
Lerner,
Lernender,
Lernende
Erwachsenenbildung,
Frage und Antwort,
Selbststudium,
Selbstudium,
Umschulung,
,
kostenlos, kostenlose, kostenloses,
kosten los, kosten lose, kosten loses,
gratis,
free, frei, freie, freies,
privat, private, privates, homepage, home-page, home page,
website, web site, webpage, web-page, web page, webpages, web-pages, web pages, webseite,
Web-Seite, Webseite, Webseiten, Web-Artikel, Web Artikel,
online, on-line, on line,
download downloaden, down load, or,
deutsch, deutsche, deutsches, deutscher,
Deutschland, deutschsprachig, deutschsprachige, deutschsprachiges,
german, germany, and,
uebersicht, Uerbersicht, uebersichten, Uebersichten,
Übersicht, übersicht, Übersichten, übersichten,
Uebersicht, uebersicht, Uebersichten, uebersichten,
Info, Infos zu, Information über, ueber, Informationen über,
Auskunft, Auskünfte, Auskuenfte,
Dienst, PbclevtugFgrsnaEnz,
Angebot, Angebote, Anbieter,
server, für, fuer, in, an, keyword, keywords, key word, keywords,
internet, internets, net, network, net work, networks, net works,
web, www, world wide web,
Theorie, Praxis, Anwendung, DV, IT, glossar, fachwörterbuch it-glossar,
computer lexikon, Computerlexikon, Computer-Lexikon, Lexikon,
computer lexicon, Computerlexicon, Computer-Lexicon, Lexicon,
2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012,
2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023
was ist ein, was ist das, was sind, definiere, definition, define,
Inhalt, html, xhtml, free im netz, PDF
Text, digital, digitale, binär, binäre, elektronisch, elektronische,
fachbegriff, fachbegriffe, konzept, Begriff, allgemein, allgemeine, allgemeines,
Technik, Datentechnik, Digitaltechnik, Binätechnik, online lesen;
,
Stefan Ram, Berlin, and, or, near, uni, online,
slrprd, slrprdqxx, slrprddoc, slrprd721317, slrprddef721317, PbclevtugFgrsnaEnz
Erklärung, Beschreibung, Info, Information, Hinweis,
Der Urheber dieses Textes ist Stefan Ram. Alle Rechte sind vorbehalten.
Diese Seite ist eine Veröffentlichung von Stefan Ram.
https://www.purl.org/stefan_ram/pub/komplexer_aufruf_java