Die Syntax der Wertmethodendeklaration in Java
Der sogenannte Köpfer einer Methodendeklaration beginnt an der Stelle, an der wir bisher immer »void« geschrieben haben, und endet mit der ersten runden Klammer zu.
- Methodendeklaration
public static
void m()
{ }- Köpfer der obigen Methodendeklaration
void m()
Bisher begann der Köpfer einer Methodendeklaration stets mit dem Schlüsselwort »void«.
- Aufbau eines Köpfer (bisher)
Koepfer
.----. .------------. .-. .-.
--->( void )--->| Bezeichner |--->( ( )--->( ) )--->
'----' '------------' '-' '-'
An Stelle von »void« kann aber auch ein anderer Datentyp geschrieben werden.
- Aufbau eines Köpfers (neu)
Koepfer
.------------------------. .------------. .-. .-.
--->| Rueckgabespezifikation |--->| Bezeichner |--->( ( )--->( ) )--->
'------------------------' '------------' '-' '-'
Eine Rückgabespezifikation ist »void« oder ein Rückgabetyp (einer der Typen »int«, »long«, »double« oder »java.lang.String«).
- Rückgabespezifikation
Rueckgabespezifikation
.----.
-----.--->( void )--->.--->
| '----' ^
| .-----. |
'--->| Typ |-----'
'-----'
Wir sehen »void« damit als eine Rückgabespezifikation an, aber nicht als einen Rückgabetyp (weil »void« kein Typ ist).
- Typ
Typ
.---.
---.---->( int )---->.--->
| '---' ^
| .------. |
'--->( long )---'
| '------' |
| .------. |
'--->( double )---'
| '------' |
| .------. |
'---->| Name |----'
'------'Name
.-----------------------.
| .------. .-. v .------------.
---'--->| Name |-->( . )---'--->| Bezeichner |--->
'------' '-' '------------'
Es ist nicht möglich, Konstanten oder Variablen vom Typ »void« zu deklarieren, da dieser Typ die Abwesenheit eines Wertes kennzeichnet, aber eine Konstante oder Variable immer einen Wert haben muß.
Übungsfragen ⃗
? Köpfer ⃗
Das folgende Syntaxdiagramm zeigt den Aufbau eines Köpfers.
- Aufbau eines Köpfers
Koepfer
.------------------------. .------------. .-. .-.
--->| Rueckgabespezifikation |--->| Bezeichner |--->( ( )--->( ) )--->
'------------------------' '------------' '-' '-'Rueckgabespezifikation
.----.
-----.--->( void )--->.--->
| '----' ^
| .-----. |
'--->| Typ |-----'
'-----'
Welcher der folgenden Texte entspricht der oben beschriebenen Syntax für einen Köpfer?
- »static m()« (Anton)
- »m()« (Berta)
- »void m()« (Cäsar)
- »int m()« (Dora)
- »int m();« (Emil)