Syntax.EN Syntaxdiagramm-Index in Englisch geordnet
Syntax.DE Syntaxdiagramm-Index in Deutsch geordnet
These syntax diagrams by Harry Diese Syntaxdiagramme von Har-
Feldmann are graphical repre- ry Feldmann sind graphische
sentations of the Backus Naur Darstellungen der Backus-Naur-
Form rules given in James Gos- Form-Regeln aus James Gosling,
ling, Bill Joy, Guy Steele, Bill Joy, Guy Steele, Gilad
Gilad Bracha: 'The Java (TM) Bracha: 'The Java (TM) Langu-
Language Specification, Third guage Specification, Third-
Edition', Addison Wesley 2005, Edition', Addison Wesley 2005,
ISBN 0-321-24678-0, by Sun ISBN 0-321-24678-0, von Sun
Microsystems, Inc. Microsystems, Inc.
Nonterminal symbols are rect- Nonterminal - Symbole sind
angular bordered. Text outside rechteckig umrandet. Text aus-
the flow of a diagram is dia- serhalb des Diagrammflusses
gram-comment or introduces na- ist Diagramm-Kommentar oder
mes for subdiagrams. führt Namen für Teildiagramme
ein.
001: UnicodeInputCharacter UnicodeEingabeZeichen
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H Unicode- Unicode H
H Escape marker H
H
--------
--------
--------
--------
H
H --
\ --
u -
HexDigit
-
HexDigit
-
HexDigit
-
HexDigit
-
H
H
--------
--------
--------
--------
H
H (char)0 . . . (char)65535 H
H The 2-byte Unicode contains Der 2 - Byte Unicode enthält H
H nearly all characters from all fast alle Zeichen aus allen H
H natural languages. An Unicode- natürlichen Sprachen. Ein H
H InputCharacter codes 2-byte- UnicodeEingabeZeichen kodiert H
H code to 1-byte-code. 2-Byte-Code in 1-Byte-Code. H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
002: LineTerminator ZeilenBegrenzer
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H -
-
carriage return CR -
-----------------
H
H
(char)13
H
H
H
H
----------------------
-
line feed LF -
-
H
H (char)10 H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
003: WhiteSpace WortZwischenraum
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H -
-
horizontal tabulator HT -
H
H
(char)9
H
H
H
H
-
form feed FF ------------
H
H
(char)12
H
H
H
H
-
space SP ----------------
H
H
(char)32
H
H
----------------
H
H
-
LineTerminator
--------
-
H
H
----------------
H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
004: InputCharacter EingabeZeichen
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
----------------------------------------
H
H -
UnicodeInputCharacter but not LF or CR
-
H
H
----------------------------------------
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
005: Comment Kommentar
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H E n d O f L i n e C o m m e n t H
H
----------------------
H
H
empty or nonempty
----------------
H
H -
-
// --
EndOfLineCommentText
-
LineTerminator
----
H
H
of InputCharacter
----------------
H
H
----------------------
H
H
T r a d i t i o n a l C o m m e n t
H
H
-------------------------------------
H
H
nonempty TradionalCommentText
H
H
-
/* --
of InputCharacter or LineTerminator
-
H
H
not containing */
H
H
-------------------------------------
H
H
D o c u m e n t a t i o n C o m m e
n t
H
H
-------------------------------------
H
H
nonempty DocumentationCommentText
H
H
-
/** -
of InputCharacter or LineTerminator
-
-
*/ -
H
H
not containing */
H
H
-------------------------------------
H
H
empty DocumentationComment
H
H
-
/**/ -------------------------------------------------
-
H
H H
H Comment must not occur in a Kommentar darf nicht in einem H
H CharacterLiteral or StringLi- ZeichenLiteral oder einem Zei- H
H teral. chenkettenLiteral vorkommen. H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
006: InputElement EingabeElement
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H
------------
H
H -
-
WhiteSpace
-
H
H
------------
H
H
---------
H
H
-
Comment
----
H
H
---------
H
H
H
H
---------
-
H
H
-
Literal
----
H
H
---------
H
H
----------
H
H
-
Operator
---
H
H
----------
H
H
-----------
H
H
-
Separator
--
- Token H
H
-----------
H
H
---------
H
H
-
Keyword
----
H
H
---------
H
H
------------
H
H
-
Identifier
-
-
H
H
------------
-
H
H H
H Whitespace and Comment are WortZwischenraum und Kommen- H
H eliminated by lexical transla- tar werden bei lexikalischer H
H tion. Übersetzung eliminiert. H
H H
H Token become the terminal sym- Token (SpielMarken) werden die H
H bols of the Java language. Terminal - Symbole der Sprache H
H Java. H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
007: Input Eingabe
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
-------------------
H
H
H
H
--------------
H
H -
-
InputElement
-
H
H
--------------
H
H
H
H
-
substitute SUB -
H
H
(char)26
H
H
H
H
------------------
-
H
H H
H SUB is known as Ctrl z SUB kennt man als Strg z H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
008: EscapeSequence FluchtzeichenFolge
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H TraditionalOctalEscape H
H (char)0...(char)255 H
H -
\ -
---
---
---
---
---
---
---
----
------------------
H
H
-
ZeroToThreeDigit
H
H
------
-----------
H
H
---------
H
H b t n f r " ' \
------------
H
H
-
OctalDigit
H
H
------
-----
H
H
---
---
---
---
---
---
---
--
---------
H
H
------------
H
H backspace BS (char)8
-
OctalDigit
H
H hor. Tabulator HT (char)9
------
-----
H
H line feed LF (char)10
-----------
-
H
H form feed FF (char)12 H
H carriage return CR (char)13 H
H double quote " (char)34 H
H single quote ' (char)39 H
H backslash \ (char)92 H
H H
H Lexical translation eliminates Lexikalische Übersetzung H
H '\u000a' and '\u000d', use eliminiert '\u000a' und H
H '\n' respectively '\r' in- '\u000d'. Zur Darstellung H
H stead. verwende man '\n' bzw. '\r'. H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
009: BooleanLiteral BooleanLiteral
HHHHHHHHHHHHHHHHHHH
H H
H -
-
true --
H
H
-
false -
-
H
H H
HHHHHHHHHHHHHHHHHHH
010: CharacterLiteral ZeichenLiteral
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H S i n g l e C h a r a c t e r H
H
-------------------------------
H
H -
' -
-
InputCharacter but not ' or \
-
-
' -
H
H
-------------------------------
H
H
----------------
H
H
-
EscapeSequence
----------------
H
H
----------------
H
H H
H EscapeSequence is only repla- FluchtzeichenFolge(n) sind H
H cement here for LF CR ' \ hier die einzige Möglichkeit, H
H LF CR ' \ darzustellen. H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
011: StringLiteral ZeichenkettenLiteral
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
------------------------------------
H
H
S t r i n g C h a r a c t e r
H
H
-------------------------------
H
H -
" -
-
InputCharacter but not " or \
-
-
" -
H
H
-------------------------------
H
H
----------------
H
H
-
EscapeSequence
----------------
H
H
----------------
H
H
--------------------------------------
H
H H
H EscapeSequence is only repla- FluchtzeichenFolge(n) sind H
H cement here for LF CR " \ hier die einzige Möglichkeit, H
H LF CR " \ darzustellen. H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
012: NonZeroDigit NichtNullZiffer
HHHHHHHHHHHHHHHHHHHHHHHHHHHH
H one of H
H 1 2 3 4 5 6 7 8 9 H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHH
013: ZeroToThreeDigit NullBisDreiZiffer
HHHHHHHHHHHHHHHHHH
H one of H
H 0 1 2 3 H
H H
HHHHHHHHHHHHHHHHHH
014: OctalDigit OktalZiffer
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H -
----------
-
-
-
H
H
H
H
H
H
---------
--------
H
H
ZeroToThreeDigit
4 5 6 7 H
H
---------
--------
H
H
H
H
----------
-
-
-
-
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
015: OctalDigits OktalZiffern
HHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
-----------------
H
H
H
H
------------
H
H -
-
OctalDigit
-
-
H
H
------------
H
H H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHH
016: Digit Ziffer
HHHHHHHHHHHHHHHHHHHHHHHH
H H
H -
-------
-
H
H
H
H
H
H
------
-----
H
H
OctalDigit
8 9 H
H
------
-----
H
H
H
H
-------
-
-
H
H H
HHHHHHHHHHHHHHHHHHHHHHHH
017: Digits Ziffern
HHHHHHHHHHHHHHHHHHHHHH
H H
H
------------
H
H
H
H
-------
H
H -
-
Digit
-
-
H
H
-------
H
H H
H H
HHHHHHHHHHHHHHHHHHHHHH
018: HexDigit HexadezimalZiffer
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H -
-----
-
-
-
-
-
-
-
-
-
-
-
H
H
H
H
H
H
---
---
H
H
Digit
A a B b C c D d E e F f H
H
---
---
H
H
H
H
-----
-
-
-
-
-
-
-
-
-
-
-
-
H
H dez. 10 11 12 13 14 15 H
H H
H Corresponding upper case let- Entsprechende Grossbuchstaben H
H ters A...F and lower case let- A..F und Kleinbuchstaben a..f H
H ters a...f are considered the stellen die gleiche Hexadezi- H
H same HexDigit. malziffer dar. H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
019: HexDigits HexadezimalZiffern
HHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
---------------
H
H
H
H
----------
H
H -
-
HexDigit
-
-
H
H
----------
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHH
020: IntegerLiteral GanzzahlLiteral
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H D e c i m a l IntegerLiteral H
H
--------------
--------
H
H -
-
NonZeroDigit
-
-
Digits
------
H
H
--------------
--------
H
H
H
H
-
0 -
-----------
------------------
H
H
O c t a l IntegerLiteral
H
H
-------------
H
H
--------------
OctalDigits
-
H
H
-------------
H
H
H e x IntegerLiteral
default H
H
-
X -------
-----------
int H
H
-
x -------
-
HexDigits
---
-
----
H
H
-----------
-
L -
H
H LongTypeSuffix
-
l -
-
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
021: FloatingPointLiteral GleitpunktzahlLiteral
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H H e x F l o a t i n g P o i n t L i t e r a l H
H -
-
0 -
-
X -
H
H
-
x -
H
H
-----------
-------
. --------
H
H
---------
-----------
H
H
-
HexDigits
-
----
. -
-----
-
HexDigits
-
H
H
---------
-----------
H
H
----------------------
H
H
------------------------------
H
H
BinaryExponent H
H
-
-
P -
--------
H
H
-
p -
-
- -
-
Digits
----
H
H
-
+ -
--------
H
H
-
----
H
H
+ default
H
H
H
H
D e c i m a l F l o a t i n g P o i n t Literal
H
H
---------------------
. --------
H
H
--------
--------
H
H
---
Digits
--
----
. -
-----
-
Digits
-
H
H
--------
--------
H
H
-------------------
-
H
H
---------------------------
H
H
ExponentPart
default H
H
-
-
E -
--------
double H
H
-
e -
-
- -
-
Digits
----
-
----
H
H
-
+ -
--------
H
H
-
----
H
H
+ default
H
H
--------------------------------
-
D -
H
H DoubleTypeSuffix
-
d -
H
H
-
F -
H
H FloatTypeSuffix
-
f -
-
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
022: NullLiteral NullLiteral
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H -
null -
H
H H
H For any ReferenceType object r Für jedes ReferenzTyp Objekt r H
H is valid: r==null or r!=null. gilt: r==null oder r!=null. H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
023: Literal Literal
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
----------------
H
H -
-
BooleanLiteral
-------
H
H
----------------
H
H
H
H
------------------
H
H
-
CharacterLiteral
-----
H
H
------------------
H
H
H
H
---------------
H
H
-
StringLiteral
--------
H
H
---------------
H
H
H
H
----------------
H
H
-
IntegerLiteral
-------
H
H
----------------
H
H
H
H
----------------------
H
H
-
FloatingPointLiteral
-
H
H
----------------------
H
H
H
H
-------------
H
H
-
NullLiteral
----------
-
H
H
-------------
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
024: Letter Buchstabe
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H one of H
H H
H A B C D E F G H I J K L M N O P Q R S T U V W X Y Z H
H a b c d e f g h i j k l m n o p q r s t u v w x y z H
H H
H Corresponding upper and lower Entsprechende Groß- und Klein- H
H case Letters are considered buchstaben gelten als signifi- H
H significant different. kant verschieden. H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
025: JavaLetter JavaBuchstabe
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
--------
H
H -
-
Letter
-----------------------------
H
H
--------
H
H
H
H
H
H
TraditionalIdentifierStart
H
H
-
$ -
H
H
H
H
-
_ -
----------------------------------
H
H
H
H
H
H
------------------------------------
H
H
H
H
other UnicodeInputCharacter c with
H
H
H
H
-
Character.isJavaIdentifierStart(c)
-
-
H
H
H
H
e.g. Greecian alpha (char)945
H
H
H
H
------------------------------------
H
H (char)0 <= c <= (char)65535 H
H H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
026: JavaDigit JavaZiffer
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
-------
H
H -
-
Digit
---------------------------------
H
H
-------
H
H
H
H
---------------------------------------
H
H
H
H
other UnicodeInputCharacter c with
H
H
H
H
-
! Character.isJavaIdentifierStart(c)
-
-
H
H
&& Character.isJavaIdentifierPart (c)
H
H
H
H
e.g. Arabic Akhad-One (char)1633
H
H
H
H
---------------------------------------
H
H (char)0 <= c <= (char)65535 H
H H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
027: Keyword SchlüsselWort
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H one of H
H H
H abstract continue for new switch H
H assert default if package synchronized H
H boolean do goto private this H
H break double implements protected throw H
H byte else import public throws H
H case enum instanceof return transient H
H catch extends int short try H
H char final interface static void H
H class finally long strictfp volatile H
H const float native super while H
H H
H const and goto are not used const und goto kommen weiter H
H further but allow the compiler nicht vor, erlauben aber dem H
H to produce error messages. Übersetzer, Fehlermeldungen H
H false and true are BooleanLi- zu erläutern. false und true H
H teral(s). null is the NullLi- sind BooleanLiteral(e). null H
H teral. ist das NullLiteral. H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
028: Identifier Bezeichner
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
-------------------------------------
H
H
-----------------
H
H
------------
------------
H
H -
-
JavaLetter
-
-
JavaDigit
-
-
H
H
------------
------------
H
H
H
H
-------------------
H
H An Identifier shall not be Ein Bezeichner darf nicht H
H identical with a Keyword, Boo- mit einem Schlüsselwort, ei- H
H leanLiteral or NullLiteral. nem BooleanLiteral oder einem H
H NullLiteral übereinstimmen. H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
029: Name Name
HHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H QualifierPoint H
H
------- .
------
H
H
------------
H
H -
-
Identifier
-
-
H
H
------------
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHH
030: Type Typ
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H -
-
boolean ----
-
H
H
-
char -------
-
-
-
H
H
-
byte -------
-Integral-
Integral-
H
H
-
short ------
NotLong-
-Type
Numeric-
Primi- H
H
-
int --------
-
Type
-Type
-tive- H
H
-
long -------
-
Type H
H
-
float ------
-
FloatingPoint-
H
H
-
double -----
-
-Type -
-
H
H
-
Boolean ----
-
-
-
H
H
-
Character --
-
Integral-
H
H
-
Byte -------
-NotLong-
H
H
-
Short ------
ClassType
Wrapper-
H
H
-
Integer ----
-
-Class-
H
H
-
Long -------
Type
H
H
-
Float ------
ClassOr-
H
H
-
Double -----
-
special
Interface-
H
H
-
String -----
-
-Class-
-Type
H
H
-
Throwable --
-
Type
H
H
-
Iterable ---
-
special
Refe- H
H
-
Annotation -
---------
-
-Interface
-rence- H
H
--------------------
Type
Type H
H
-
ClassOrInterfaceType
-
-----------
-
Array-
H
H
--------------------
-
-Type
H
H
----------
TypeVar.
-
[ -
] -
-
H -
H
H
-
Identifier
-----------
bounded -
-Type-
H
H
----------
gen.Class-
WildCard -
Identifier
H
H
OrInterface
forbidden
H
H
-
no name --------------
-
-
-Null-
H
H type null -
Type -
H
H H
H WrapperClassType(s),String and HüllKlassenTyp(en), String und H
H Throwable are classes and Throwable sind Klassen und H
H Iterable is an interface of Iterable ist eine Schnittstel- H
H the package java.lang. le des Pakets java.lang. H
H Annotation is an interface of Annotation ist eine Schnitt- H
H the package java.lang.annota- stelle des Pakets java.lang. H
H tion. annotation. H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
031: ResultType ErgebnisTyp
HHHHHHHHHHHHHHHHHHHH
H H
H
------
H
H -
-
Type
-
H
H
------
H
H
-
void ---
-
H
H H
HHHHHHHHHHHHHHHHHHHH
032: ClassType KlassenTyp
033: InterfaceType SchnittstellenTyp
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
---------------- .
-----------------------
H
H
H
H
at last a
H
H
Class- resp.
H
H
Interface-
H
H
------------
--------------------
H
H -
-
Identifier
-
-
TypeArgumentClause
-
-
H
H
------------
--------------------
H
H
of generic
H
H
class resp. interface
H
H
H
H
-------------------------
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
034: ClassOrInterfaceType KlassenOderSchnittstellenTyp
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
-----------
H
H -
-
ClassType
-----
H
H
-----------
H
H
H
H
---------------
H
H
-
InterfaceType
-
-
H
H
---------------
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
035: ExceptionType AusnahmeTyp
HHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
-----------
H
H -
-
ClassType
--
H
H
-----------
H
H
H
H
TypeParameter-
H
H
------------
H
H
-
Identifier
-
-
H
H
------------
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHH
036: Operator Operator
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H one of H
H H
H new see Keyword prio15 Allocator H
H H
H ++ PostfixIncrementOp prio14 -
Postfix- -
H
H -- PostfixDecrementOp prio14 -
Operator
H
H
-Crement- H
H ++ PrefixIncrementOp prio13 -
OperatorH
H -- PrefixDecrementOp prio13
-
H
H ~ BitwiseComplementOp prio13
H
H ! LogicalNotOp prio13
-PrefixOperator H
H + UnaryPlusOp prio13
H
H - UnaryMinusOp prio13 -
H
H H
H (Type) prio13 CastOperator H
H see Separator H
H * MultiplicationOp prio12 -
H
H / DivisionOp prio12
-Multiplicative- H
H % RemainderOp prio12 -
Operator H
H H
H + AdditionResp- prio11 -
H
H ConcatenationOp
-AdditiveOperator H
H - SubtractionOp prio11 -
H
H H
H << BitwiseShiftLeftOp prio10 -
H
H >> BitwiseShiftRight- prio10
H
H SameSignOp
-ShiftOperator H
H >>> BitwiseShiftRight- prio10
H
H ZeroSignOp -
H
H H
H < LessThanOp prio 9 -
H
H <= LessThanOrEqualOp prio 9
-NumericalComparison- H
H > GreaterThanOp prio 9
Operator H
H >= GreaterThanOrEqualOp prio 9 -
H
H H
H instanceof prio 9 TypeComparisonOperator H
H see Keyword H
H == EqualOp prio 8 -
EqualityOperator H
H != NotEqualOp prio 8 -
H
H H
H & BitwiseRespLogicalAndOp prio 7 -
BitwiseRespLogical- H
H ^ BitwiseRespLog.NotEqualOp prio 6
- Operator H
H | BitwiseRespLogicalOrOp prio 5 -
H
H H
H && ShortCircuitLogicalAndOp prio 4 -
ShortCircuit- H
H || ShortCircuitLogicalOrOp prio 3 -
LogicalOperator H
H H
H ? ThenOp prio 2 -
ConditionalOperator H
H : ElseOp prio 2 -
H
H H
H = SimpleAssignmentOp prio 1 -
H
H *= MultiplicationAssignmentOp prio 1
H
H /= DivisionAssignmentOp prio 1
H
H %= RemainderAssignmentOp prio 1
H
H += AdditionAssignmentOp prio 1
H
H -= SubtractionAssignmentOp prio 1
H
H <<= BitwiseShiftLeft- prio 1
H
H AssignmentOp
-AssignmentOperator H
H >>= BitwiseShiftRight- prio 1
H
H SameSignAssignmentOp
H
H >>>= BitwiseShiftRight- prio 1
H
H ZeroSignAssignmentOp
H
H &= BitwiseRespLogical- prio 1
H
H AndAssignmentOp
H
H ^= BitwiseRespLogical- prio 1
H
H NotEqualAssignmentOp
H
H |= BitwiseRespLogical- prio 1
H
H OrAssignmentOp -
H
H H
H An operator with greater num- Ein Operator mit grösserer H
H ber has higher priority. Nummer hat höhere Priorität. H
H Operator(s) with priority 3 to Operator(en) mit Prioritäten 3 H
H 12 are evaluated left to right bis 12 werden von links nach H
H and - if of same priority - rechts ausgewertet und - falls H
H associated left to right. von gleicher Priorität - von H
H links nach rechts assoziiert. H
H ConditionalOperator(s) and As- BedingterOperator(en) und Zu- H
H signmentOperator(s) are asso- weisungsOperator(en) werden H
H ciated right to left. von rechts nach links assozi- H
H ziiert. H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
037: Separator Separator
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H one of H
H . Point H
H , Comma H
H ; Semicolon H
H ( ) Parantheses H
H [ ] Brackets H
H { } Braces H
H < > AngleBrackets H
H H
H Separator(s) have highest pri- Separator(en) haben höchste H
H ority 15. Priorität 15. H
H Constructs with Separator(s) . Konstrukte mit Separator(en) . H
H or , or ; are evaluated and oder , oder ; werden von H
H associated left to right. links nach rechts ausgewertet H
H und assoziiert. H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
038: DefaultNullValue VorgabeNullwert
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H -
--------
false -
DefaultBooleanNullValue H
H
--
(char)0------
DefaultCharNullValue '\0' '\u000' H
H
--
(byte)0 -----
DefaultByteNullValue H
H
-
(short)0 -----
DefaultShortNullValue H
H
--------
0 -----
DefaultIntNullValue H
H
--
(long)0 -----
DefaultLongNullValue 0l 0L H
H
-
(float)0.0----
DefaultFloatNullValue 0.0f 0.0F H
H
--------
0.0 ---
DefaultDoubleNullValue H
H
--------
null --
-
DefaultReferenceNullValue H
H H
H A Field, an ArrayComponent or Ein Datenfeld, eine Reihungs- H
H a ReferenceType object, if not komponente oder ein Referenz- H
H explicitely initialized, is typ Objekt, falls nicht expli- H
H implicitely initialized with zit initialisiert, wird im- H
H a DefaultNullValue of appro- plizit initialisiert mit ei- H
H priate type. nem VorgabeNullWert des ent- H
H sprechenden Typs. H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
039: Crement Krement
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
-------------------------
H
H -
-
PrefixIncrementOperator
-
H
H
-------------------------
H
H
H
H
-------------------------
-----------------
H
H
-
PrefixDecrementOperator
-
-----
UnaryExpression
-
H
H
-------------------------
-----------------
H
H
H
H
-------------------
--------------------------
H
H
-
PostfixExpression
--
-
PostfixIncrementOperator
-
H
H
-------------------
--------------------------
H
H
H
H
--------------------------
H
H
-
PostfixDecrementOperator
-
-
H
H
--------------------------
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
040: ArrayCreationExpression ReihungsErzeugungsAusdruck
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H Allocator
---------------
H
H -
new -
-
PrimitiveType
--------
H
H
---------------
H
H
H
H
----------------------
H
H
-
ClassOrInterfaceType
-
H
H
----------------------
H
H
H
H
---------------------------------
H
H
H
H
H
H
---------------------------
H
H
H
H
promotable
H
H
to int >=0
H
H
------------
-----------
H
H
-
-
[ -
Expression
-
] -
-
-
[ -
] -
H
H
------------
-
H
H
indexlength
H
H
H
H
-<---------
------------------
H
H
-
[ -
] -
-
ArrayInitializer
-
-
H
H
------------------
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
041: ArrayAccess ReihungsZugriff
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H ArrayType H
H Expression- H
H
------
H
H -
-
Name
---------------
H
H
------
promotable H
H
ArrayType
to int >=0 H
H
-------------------
------------
H
H
-
PrimaryNoNewArray
-
-
[ -
Expression
-
] -
H
H
-------------------
------------
H
H 0<=index<indexlength H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
042: Primary PrimärAusdruck
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
------------
-
H
H -
-
( -
Expression
-
) -----------
H
H
------------
H
H
---------
H
H
-
Literal
------------------------
H
H
---------
H
H
------------
-
Class-
H
H
-
ResultType
-
. ---
class -----
-Literal
H
H
------------
-
H
H
H
H
enclosing instance
H
H
Class-
H
H
------
H
H
-
Name
-------
. -
H
H
------
Primary- H
H
- NoNew- H
H
invoked instance
Array H
H
---------------------
-
this ------
H
H
H
H
--------------------------------
H
H
-
ClassInstanceCreationExpression
-
H
H
--------------------------------
H
H
------------------
H
H
-
MethodInvocation
---------------
H
H
------------------
H
H
-------------
H
H
-
FieldAccess
--------------------
H
H
-------------
H
H
-------------
H
H
-
ArrayAccess
--------------------
H
H
-------------
-
H
H
H
H
-------------------------
H
H
-
ArrayCreationExpression
--------
-
H
H
-------------------------
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
043: PostfixExpression PostfixAusdruck
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
------
-----------------
H
H -
-
Name
----
-
PostfixOperator
-
H
H
------
-----------------
H
H
---------
H
H
-
Primary
-
-
---------------------
-
H
H
---------
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
044: CastExpression KonvertierungsAusdruck
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H
--------------------------------
H
H
H
H
-------------
------------------
H
H -
-
( -
ReferenceType
-----
) -
-
PostfixExpression
-
H
H
-------------
------------------
H
H
-
NotPlus-
H
H
-
~ -
- Minus-
H
H
-
! -
Prefix-
H
H
------
-
Operator
H
H
-------------
-----------------
H
H
-
( -
PrimitiveType
-
-
) -
-
UnaryExpression
--
-
H
H
-------------
-----------------
H
H
-----------
-
H
H
-
[ -
] -
H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
045: UnaryExpression UnärAusdruck
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H
---------------------
H
H
----------------
H
H -
-
PrefixOperator
-
H
H
----------------
H
H
-------------------
H
H
-
PostfixExpression
-
H
H
-------------------
H
H
----------------
H
H
-
CastExpression
----
-
H
H
----------------
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
046: MultiplicativeExpression MultiplikativerAusdruck
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
------------------------
H
H
--
MultiplicativeOperator 
-
H
H
------------------------
H
H
-----------------
H
H --
-
UnaryExpression
---------
-
H
H
-----------------
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
047: AdditiveExpression AdditiverAusdruck
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
------------------
H
H
--
AdditiveOperator 
--------
H
H
------------------
H
H
--------------------------
H
H --
-
MultiplicativeExpression
-
-
H
H
--------------------------
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
048: ShiftExpression VerschiebungsAusdruck
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
---------------
H
H
--
ShiftOperator 
-----
H
H
---------------
H
H
--------------------
H
H -
-
AdditiveExpression
-
-
H
H
--------------------
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
049: ComparisonExpression VergleichAusdruck
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H Reference- H
H
------------
------------
H
H
Numerical-
-------------
Type-
H
H
-
Comparison-
---
-
ReferenceType
-
Comparison-
-
H
H
Operator
-------------
Operator
H
H
------------
bounded
------------
H
H
WildCard
H
H
forbidden
H
H
---------------
H
H -


ShiftExpression
-

----------------------------------
-
H
H
---------------
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
050: EqualityExpression GleichheitAusdruck
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H Boolean- or H
H Numerical- or H
H Reference- H
H
------------------
H
H
--
EqualityOperator 
----
H
H
------------------
H
H
----------------------
H
H --
-
ComparisonExpression
-
-
H
H
----------------------
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
051: BitwiseRespLogicalAndExpr. BitweiserBzwLogischerUndAusdruck
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H BitwiseRespLogicalAndOperator H
H
----------- &
----------
H
H
H
H
--------------------
H
H -
-
EqualityExpression
-
-
H
H
--------------------
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
052: BitwiseRespLog.NotEqualExpr. BitweiserBzwLog.UngleichAusdruck
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H BitwiseRespLogicalNotEqualOperator H
H
------------------ ^
----------------
H
H
H
H
---------------------------------
H
H -
-
BitwiseRespLogicalAndExpression
-
-
H
H
---------------------------------
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
053: BitwiseRespLogicalOrExpr. BitweiserBzwLog.OderAusdruck
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H BitwiseRespLogicalOrOperator H
H
------------------- |
--------------------
H
H
H
H
--------------------------------------
H
H -
-
BitwiseRespLogicalNotEqualExpression
-
-
H
H
--------------------------------------
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
054: ShortCircuitLogicalAndExpr. KurzauswertungLog.UndAusdruck
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H ShortCircuitLogicalAndOperator H
H
---------------- &&
----------------
H
H
H
H
--------------------------------
H
H -
-
BitwiseRespLogicalOrExpression
-
-
H
H
--------------------------------
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
055: ShortCircuitLog.OrExpression KurzauswertungLog.OderAusdruck
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H ShortCircuitLogicalOrOperator H
H
----------------- ||
-----------------
H
H
H
H
----------------------------------
H
H -
-
ShortCircuitLogicalAndExpression
-
-
H
H
----------------------------------
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
056: Condition Bedingung
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H boolean or Boolean nonvoid H
H
-------------
nonvoid
------------
H
H
ShortCircuit-
ThenOp
----------
ElseOp
Conditional-
H
H -
LogicalOr-
-
? ---
Expression
-
: --
Expression
-
H
H
Expresion
----------
------------
H
H
-------------
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
057: ConditionalExpression BedingterAusdruck
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H
-----------------------------------------------------
H
H
-------------------
nonvoid
H
H
ShortCircuit-
ThenOp
----------
ElseOp
H
H -
-
LogicalOrExpression
-
-
? --
Expression
-
: ---
H
H
-------------------
----------
H
H
-
H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
058: Assignment Zuweisung
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H L e f t H a n d S i d e H
H VariableOrField- H
H
------
H
H -
-
Name
--------
H
H
------
H
H
-------------
H
H
-
FieldAccess
-
H
H
-------------
-------------
H
H
-------------
Assignment-
------------
H
H
-
ArrayAccess
-
-
Operator
-
Expression
-
H
H
-------------
-------------
------------
H
H H
H The LeftHandSide must be a na- Die LinkeSeite muss eine be- H
H med variable, such as a Name nannte Variable sein, z.B. der H
H of a local variable or a Name einer lokalen Variablen H
H field, or results from a oder eines Datenfelds, oder H
H FieldAccess or an ArrayAccess. ergibt sich aus einem Daten- H
H feldZugriff oder einem Rei- H
H hungsaufruf. H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
059: Expression Ausdruck
060: ConstantExpression KonstanterAusdruck
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
------------------------------------------------------
H
H
H
H
-----------------------
--------------------
H
H -
-
ConditionalExpression
-
-
AssignmentOperator
-
H
H
-----------------------
--------------------
H
H
H
H
-
H
H H
H A ConstantExpression is an Ein KonstanterAusdruck ist ein H
H Expression constant at compile Ausdruck, der konstant ist zur H
H time and thus must not contain Übersetzungszeit und darf da- H
H nonfinal Variable, MethodInvo- her nicht enthalten: nicht- H
H cation, Allocator, CrementOpe- final Variable,MethodenAufruf, H
H rator, TypeComparisonOperator Allokator , KrementOperator , H
H or AssignmentOperator. TypVergleichOperator oder Zu- H
H weisungsOperator. H
H H
H The diagrams for PostfixEx- Die Diagramme für PostfixAus- H
H pression upto ConditionalEx- druck bis BedingterAusdruck H
H pression are defining the pri- definieren die Prioritäten 14 H
H orities 14 downto 1 of Opera- abwärts bis 1 von Operator(en) H
H tor(s) in an Expression. im Ausdruck. H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
061: StatementExpression AnweisungsAusdruck
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
------------
H
H -
-
Assignment
----------------------
H
H
------------
H
H
H
H
---------
H
H
-
Crement
-------------------------
H
H
---------
H
H
H
H
------------------
H
H
-
MethodInvocation
----------------
H
H
------------------
H
H
H
H
---------------------------------
H
H
-
ClassInstanceCreationExpression
-
-
H
H
---------------------------------
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
062: StatementExpressionList AnweisungsAusdruckListe
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
------------ ,
----------
H
H
H
H
---------------------
H
H -
-
StatementExpression
-
-
H
H
---------------------
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
063: VariableInitializer VariablenInitialisierer
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
------------
H
H -
-----------
Expression
------------------
H
H
------------
H
H
H
H
------- ,
------
-
, -
-
H
H
H
H
------------
Array- H
H
-
{ -
-
-
Variable-
-
-
-----
-
} -
-
- Initia- H
H
Initializer
lizer H
H
------------
H
H
H
H
-----------------------
-
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
064: VariableDeclaratorList VariablenVereinbarerListe
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H H
H
----------------------------------- ,
-----------------
H
H
H
H
V a r i a b l e D e c l a r a t o r
H
H
-----------
H
H
Variable-
-------------
H
H
------------
allowed
Variable-
H
H -
-
Identifier
-
-
[ -
] -
-
= -
Initializer
-
-
H
H
------------
but not
-------------
H
H
recommended
H
H
H
H
-------------
-----------------------
H
H H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
065: LocalVariableDeclaration LokaleVariablenVereinbarung
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H H
H
-----------------------
H
H
H
H
------------------
H
H -
-
VariableModifier
-
H
H
------------------
H
H
H
H
------
------------------------
H
H
-
Type
-
VariableDeclaratorList
-
H
H
------
------------------------
H
H H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
066: ForControl ForKontrolle
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H H
H F o r E a c h C o n t r o l H
H
-----------------------
H
H
------------------
H
H -

-
VariableModifier
-
ArrayType or H
H
------------------
ClassType H
H
implementing H
H
I t e r a t o r Iterable H
H
------
------------
----------
H
H
-
Type
---
-----
Identifier
-
: --
Expression
-
H
H
------
------------
----------
H
H
H
H
-------------
H
H
H
H
B a s i c F o r C o n t r o l
H
H
F o r Init
H
H
------------------------
H
H
-
VariableDeclaratorList
-
H
H
------------------------
H
H
H
H
---------------
H
H
H
H
F o r Init
F o r Condition F o r Update
H
H
----------
boolean or Boolean
----------
H
H
Statement-
----------
Statement-
H
H
-
Expression
-
-
Expression
-
-
Expression
-
H
H
-List
----------
-List
H
H
----------
----------
H
H
H
H
F o r E
v
e r C o
n
t r o l
H
H
--------------

;
--------------

;
--------------
-
H
H H
H H
H Iterator(s) or variables de- In der ForKontrolle verein- H
H clared in the ForControl are barte Iterator(en) oder Vari- H
H local to the right and in the ablen sind lokal nach rechts H
H following Statement. und in der nachfolgenden An- H
H weisung. H
H H
H Iterator(s) or variables in Iterator(en) oder Variablen in H
H nested ForStatement(s) must be geschachtelten ForAnweisung H
H different. (en) müssen verschieden sein. H
H H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
067: SwitchBlock SwitchBlock
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
----------------------------------------------
H
H
switch-
H
H
assignable
-------------
H
H
not null
H
H
----------
---------
H
H
no two
Constant-
Block-
H
H -
{
-
case -

Expression
-
: -

Statement
-
-
} -
H
H
of same
----------
---------
H
H
value
e.g. break;
H
H
EnumConstant-
H
H
----------
---------------
H
H


Identifier
-
H
H
one
----------
H
H
-
default -------------
H
H
at most
H
H
------------------------------------------------
H
H H
H If code is not to fall through Damit das Programm nicht auch H
H subsequent case labels, e.g. durch die nachfolgenden case H
H a BreakStatement should be Sprungziele läuft, sollte z.B. H
H used as the last BlockState- eine BreakAnweisung als letzte H
H ment. BlockAnweisung gesetzt werden. H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
068: Block Block
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
--------------------------------------
H
H
B l o c k S t a t e m e n t
H
H
--------------------------
H
H -
{ -
-
-
LocalVariableDeclaration
-
; -
-
} -
H
H
--------------------------
H
H
H
H
------------------
H
H
-
ClassDeclaration
--------------
H
H
------------------
H
H
of local class
H
H
H
H
-----------
H
H
-
Statement
---------------------
H
H
-----------
H
H
----------------------------------------
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
069: Statement Anweisung
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
----------------------
-------------------
H
H
H
H
L a b e l e d
S t a t e m e n t
H
H
Label-
nested labels
H
H
------------
must be
H
H -
-
Identifier
-
: -
different
H
H
------------
H
H
I f S t a t e m e n t
H
H
boolean or Boolean
-
-
H
H
------------
Short-
Long-H
H
-
if ------
( -
Expression
-
) -
--
- If-
- If- H
H
------------
-
Sta-
Sta- H
H
-----------
te-
te- H
H
----------------
Statement 
------
ment
ment H
H
-----------
H
H
-
else --------------------------------
H
H
belongs to left-next else-free if
-
H
H
H
H
------------
-
H
H
-
for -----
( -
ForControl
-
) -----
- For- H
H
------------
-
Statement H
H
boolean or Boolean
-
H
H
------------
H
H
-
while ---
( -
Expression
-
) -----
- While- H
H
------------
-
Statement H
H
-----------
-
H
H
-
do -----------
Statement
-
- Do- H
H
-----------
Statement H
H
------------------------------
H
H
boolean or Boolean
H
H
------------
H
H
-
while -
( -
Expression
-
) -----
H
H
------------
-
H
H
-
break ------
-
H
H
for,while,do
surrounding
- Break- H
H
switch
label-
Statement H
H
------------
-
H
H
-
continue ---
-
Identifier
----------
Continue- H
H
for,while,do
------------
- StatementH
H
-------------------------
-
-
H
H
-
H
H
Type
H
H
------------
H
H
-
return -----
-
Expression
----------
- Return- H
H
from method
------------
Statement H
H
void
H
H
-------------------------
-
H
H
loader of
-
H
H
top-level
H
H
enables/ boolean or Boolean
H
H
disables
------------
H
H
-
assert -------
Expression
-
-------
- Assert- H
H
------------
Statement H
H
if false: throws
H
H
AssertionError
H
H
----------------------
H
H
non void
H
H
------------
H
H
-
: -
Expression
----------
H
H
------------
H
H
converted to
H
H
String detail message
H
H
of AssertionError
-
H
H
H
H
Throwable
-
H
H
------------
H
H
-
throw --------
Expression
----------
- Throw- H
H
------------
-
Statement H
H
---------------------
H
H
-----------------
StatementExpression
-
H
H
---------------------
H
H
-----------------------------------------
-
; --------
H
H
H
H
S w i t c h S t a t e m e n t
H
H
Enum or IntegralNotLongType
H
H
or IntegralNotLongClassType
H
H
------------
-------------
H
H
-
switch --
( -
Expression
-
) --
SwitchBlock
-
H
H
------------
-------------
H
H
T r y S t a t e m e n t
H
H
Try-
H
H
-------
H
H
-
try --------------------------------
Block
-
H
H
-------
H
H
C a t c h e s
H
H
------------------------------------------------
H
H
Throwable
H
H
Exception- Catch-
H
H
-----------
-------
H
H
-
catch -
( -
Formal-
--
) --
Block
-
----
H
H
Parameter
-------
H
H
-----------
H
H
local in CatchBlock
H
H
H
H

-----------------------------------------------
H
H
H
H
-
finally ------------------------------
H
H
H
H
S y n c h r o n i z e d S t a
t e m e n t
H
H
non-null
H
H
ReferenceType
H
H
------------
H
H
-
synchronized -
( -
Expression
-
) -
H
H
------------
H
H
locked/unlocked for others
H
H
-------
H
H
-------------------------------------------
-
Block
-
-
H
H
-------
H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
070: Modifier Modifizierer
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H -
-
transient --------------
-
H
H
4 not part of the persis-
H
H
tent state of an object
H
H
-
volatile ---------------
H
H
5 all threads see a reli-
H
H
ably updated value
Vari
H
H
-
final ------------------
-
able
Field -
-
H
H
5 may only be assigned to
-Modi
-Modi
H
H
once, always same value
fier
fier
H
H
------------
-
-
H
H
-
Annotation
-----------
H
H
1
------------
-
H
H
-
public -----------------
-
H
H
2 accsbl.in same pack.and
Con
H
H
from other,if observbl.
Ac
struc
Inter
Me H
H
-
protected --------------
cess
tor
face
Class
thodH
H
2 accsbl.in same/subclass
-Modi
-Modi
-Modi
-Modi
-ModiH
H
possibly from oth.pack.
fier
fier
fier
fier
fierH
H
-
private ----------------
H
H
2 accsbl.only in the body
H
H
of the (toplevel) class
-
-
H
H
-
static -----------------
H
H
3 invoked without refer.
H
H
to a particular object
-
H
H
-
abstract ---------------
H
H
3 introduces,but does not
H
H
prov. an implementation
H
H
-
strictfp ---------------
H
H
7 strict float.point prec.
H
H
,against over/underflow
-
-
H
H
-
synchronized -----------
H
H
6 aquire a monitor before
H
H
execution (lock/unlock)
H
H
-
native -----------------
-
H
H 7 platform-dependent code,
H
H body given as semicolon -
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
Order 1..7 is recommended. Ordnung 1..7 wird empfohlen.
Modifier(s) of same order do Modifizierer gleicher Ordnung
not fit together, except dif- passen nicht zusammen, ausge-
ferent Annotation(s). nommen verschiedene Anmerkun-
g(en).
The Modifier abstract does not Der Modifizierer abstract
fit to private, static, final paßt nicht zu private, static,
synchronized,strictfp, native. final, synchronized, strictfp,
An InterfaceModifier is impli- native. Ein SchnittstellenMo-
citely abstract (don't write). difizierer ist impliplizit ab-
stract (nicht schreiben!).
The nonexistence of AccessMo- Das Fehlen von ZugriffModifi-
difier(s) means public in the zierer(n) bedeutet public im
actual package but private to aktuellen Paket, aber private
other. für andere.
071: AbstractMethodModifier AbstraktMethodenModifizierer
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H
------------
H
H -
-
Annotation
-
H
H
------------
H
H
-
public -------
H
H
H
H
-
abstract -----
-
H
H H
H An AbstractMethodModifier in Ein AbstraktMethodenModifizie- H
H the body of an interface is rer im Rumpf einer Schnitt- H
H implicitely public, and ab- stelle ist implizit public und H
H stract (don't write). abstract (nicht schreiben). H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
072: ConstantFieldModifier KonstantDatenfeldModifizierer
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H
------------
H
H -
-
Annotation
-
H
H
------------
H
H
-
public -------
H
H
H
H
-
static -------
H
H
H
H
-
final --------
-
H
H H
H A ConstantFieldModifier in the Ein KonstantDatenfeldModifi- H
H body of an interface is im- zierer im Rumpf einer Schnitt- H
H plicitely public, static, and stelle ist implizit public, H
H final (don't write). static und final (nicht H
H schreiben!). H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
073: FieldDeclaration DatenfeldVereinbarung
074: ConstantFieldDeclaration KonstantDatenfeldVereinbarung
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
--------------------
H
H
H
H
---------------
H
H -
-
FieldModifier
-
H
H
---------------
H
H
------
------------------------
H
H
-
Type
-
VariableDeclaratorList
-
; -
H
H
------
------------------------
H
H H
H H
H A ConstantFieldDeclaration is Eine KonstantDatenfeldVerein- H
H a FieldDeclaration with Con- barung ist eine DatenfeldVer- H
H stantFieldModifier(s). barung mit KonstantDatenfeld- H
H Modifizierer(n). H
H H
H A VariableDeclarator in an Ein Variablenvereinbarer in H
H ConstantFieldDeclaration must einer KonstantDatenfeldverein- H
H have a VariableInitializer. barung muß einen VariablenIni- H
H tialisierer besitzen. H
H H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
075: FieldAccess DatenfeldZugriff
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
---------
H
H -
-
Primary
-
. ---
H
H
---------
H
H
e.g. this
H
H
H
H
Class-
H
H
------
H
H
-
Name
----
. -
H
H
------
Field- H
H
-------------------
------------
H
H
-
super -----
. ---
-
Identifier
-
H
H
------------
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
076: FormalParameterClause FormalParameterKlausel
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
--------------------- ,
-----------------
H
H
F o r m a l P a r a m e t e r
H
H
-----------------------
H
H
------------------
H
H -
( -


-
-
VariableModifier
-
-
) -
H
H
------------------
H
H
Formal-
H
H
Parameter-
----------
H
H
----
----------
allowed 
H
H
-
Type
------
Identifier

[ -
] -
-
H
H
----
----------
but not
H
H
recommended
H
H
-----------
H
H
V a r i a b l e A r i t y P a r a m e t e r
H
H
-----------------------
H
H
------------------
H
H
-
-
VariableModifier
-
H
H
------------------
H
H
VariableArity-
H
H
Parameter-
----------
H
H
----
Elipsis
----------
allowed
H
H
-
Type
-
...-
Identifier

[ -
] -
-
H
H
----
----------
but not
H
H
recommended
H
H
-----------
H
H
-----------------------------------------------
H
H H
H A VariableArityParameter with Ein BeliebigMehrfachParameter H
H Type ... Identifier defines a mit Type ... Identifier be- H
H FormalParameter with Type[] zeichnet einen FormalParameter H
H Identifier. A VariableArity- mit Type[] Identifier . Ein H
H ParameterIdentifier v allowes BeliebigMehrfachParameterBe - H
H v[i], v.length, even v.length zeichner v erlaubt v[i], H
H ==0 (no Argument). v.length, sogar v.length==0 H
H (kein Argument). H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
077: ArgumentClause ArgumentKlausel
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
------- ,
------
H
H
A r g u m e n t
H
H
------------
H
H -
( -
-
-
Expression
-
-
-
) -
H
H
------------
H
H
-----------------------
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
078: TypeParameterClause TypParameterKlausel
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
--------------- ,
----------------------------
H
H
H
H
T y p e P a r a m e t e r
H
H
H
H
TypeParameter- T y p e B o u n d
H
H
----------
---------------
H
H -
< -

Identifier
-
extends -
ClassOr-
-
-
> -
H
H
----------
InterfaceType
H
H
---------------
H
H
--------- &
-------
H
H
---------------
H
H
-
InterfaceType
-
-
H
H
---------------
H
H
H
H
--------------------------------
H
H extends Object H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
079: TypeArgumentClause TypArgumentKlausel
080: NonWildTypeArgumentClause NichtPlatzhalterTypArgum.Klausel
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
---------------- ,
----------------
-
H
H
NonWild- H
H
T y p e A r g u m e n t
- Type- H
H
-------------
Argument-H
H -
<
------------------

ReferenceType
-
-
> -
Clause H
H
-------------
-
H
H
-
?
-
extends -
upper bound
-
H
H
H
H
-
super ---
lower bound
- WildCard H
H
H
H
------------------------------
-
H
H no bound H
H H
H A NonWildTypeArgumentClause is Eine NichtPlatzhalterTypArgu- H
H a TypeArgumentClause without mentKlausel ist eine TypArgu- H
H WildCard. mentKlausel ohne Platzhalter. H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
081: MethodDeclarator MethodenVereinbarer
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H Method- H
H
------------
-----------------------
H
H -
Identifier
-
FormalParameterClause
-
H
H
------------
-----------------------
H
H of method H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
082: Throws AusnahmeAuswerfen
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H H
H
------- ,
------
H
H
H
H
Exception
H
H
-----------
H
H -
throws -
-
ClassType
--
-
H
H
-----------
H
H
H
H
TypeParameter-
H
H
------------
H
H
-
Identifier
-
H
H
------------
H
H H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
083: MethodDeclaration MethodenVereinbarung
084: AbstractMethodDeclaration AbstraktMethodenVereinbarung
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H H
H
---------------------
H
H
----------------
---------------------
H
H -
-
MethodModifier
-
-
-
TypeParameterClause
-
H
H
----------------
---------------------
H
H
of generic method
H
H
-----------------------
H
H
------------
H
H
--
ResultType 
---------
--------------------------
H
H
------------
H
H
MethodBody H
H
------------------
--------
-------
H
H
-
MethodDeclarator
-
-
Throws
-
--
-
Block
-
-
H
H
------------------
--------
-------
H
H
H
H
-------------
----
; ----
H
H abstract or native H
H H
H H
H An AbstractMethodDeclaration Eine AbstraktMethodenVerein- H
H is a MethodDeclaration with barung ist eine MethodenVer- H
H AbstractMethodModifier(s) einbarung mit AbstraktMetho- H
H and Semicolon instead of Me- denModifizierer(n) und Semi- H
H thodBody. kolon anstatt MethodenRumpf. H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
085: MethodInvocation MethodenAufruf
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H Class- H
H
------
H
H -
----
Name
-----
. ----
H
H
------
H
H
Class-
H
H
------
H
H
-
-
Name
-----
. -
H
H
------
H
H
H
H
--------------------
H
H
H
H
--
super -----
. -
H
H
class
H
H
H
H
---------
---------------------------
H
H
----
Primary
--
. -
-
-
NonWildTypeArgumentClause
-
H
H
---------
---------------------------
H
H
e.g. this
of generic method
H
H
H
H
--------------------
-----------------------------------
H
H
Method- H
H
------------
H
H
-
Identifier
----
H
H
------------
H
H
Method-
H
H
------
----------------
H
H
----
Name
----------
----
ArgumentClause
-
H
H
------
----------------
H
H of method H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
086: ClassSemantics KlassenSemantik
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H one of ...class H
H H
H instance-top-level -
-
H
H
- top-level
H
H static-top-level -
-
H
H
- static
H
H static-member -
-
-
H
H
- member
- named
H
H instance-member -
-
H
H
H
H local -
no-
- inner -
- nested H
H
- Access-
H
H anonymous -
Modifier -
-
H
H H
H An anonymous class is implici- Eine anonyme Klasse ist impli- H
H tely final and must not be de- zit final und darf nicht ab- H
H clared abstract. strakt vereinbart werden. H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
087: ConstructorDeclarator KonstruktorVereinbarer
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
---------------------
H
H -
-
TypeParameterClause
-
H
H
---------------------
H
H
of generic constructor
H
H
--------------------------
H
H
H
H
Constructor- H
H
------------
-----------------------
H
H
-
Identifier
-
FormalParameterClause
-
H
H
------------
-----------------------
H
H of constructor H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
088: Explic.ConstructorInvocation ExpliziterKonstruktorAufruf
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
---------
H
H -
-
-
Primary
-
. -
H
H
---------
H
H
-------------------
H
H
-------------------------
H
H
-
NonWildTypeArgumentClause
-
H
H
-------------------------
H
H
of generic constructor
H
H
------------------------------
H
H
-
super -----------------------
H
H
class
H
H
constructor
H
H
-------------------------
H
H
-
-
NonWildTypeArgumentClause
-
H
H
-------------------------
H
H
of generic constructor
H
H
------------------------------
H
H
alternate constructor of
--------------
H
H
-
this ------------------------

ArgumentClause
-
; -
H
H class
--------------
H
H of constructor H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
089: ConstructorDeclaration KonstruktorVereinbarung
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H H
H
--------------------------
H
H
---------------------
H
H -
-
ConstructorModifier
-
H
H
---------------------
H
H
-----------------------
--------
H
H
-
ConstructorDeclarator
-
-
Throws
-
H
H
-----------------------
--------
H
H
H
H
----------------------------
-------------
H
H
H
H
C o n s t r u c t o r B o d y H
H
--------------
-------------------
H
H
Explicite-
--------------
H
H
-
{ -
-
Constructor-
-
-
-
BlockStatement
-
---
} -
H
H
Invocation
--------------
H
H
--------------
--------------------
H
H
H
H
-------------------
H
H H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
090: ClassMemberDeclaration KlassenMitgliedVereinbarung
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H H
H
------------------
H
H -
-
FieldDeclaration
------------
H
H
------------------
H
H
-------------------
H
H
-
MethodDeclaration
-----------
H
H
-------------------
H
H
-----------------------------
H
H
-
ClassOrInterfaceDeclaration
-
-
H
H
-----------------------------
H
H of member-class or member-interface H
H H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
091: NormalClassDeclaration NormaleKlassenVereinbarung
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H H
H
--------------------
H
H
H
H
---------------
H
H -
-
ClassModifier
-
H
H
---------------
H
H
H
H
Class- H
H
---------
---------------------
H
H
-
class -
Identifer
-
-
TypeParameterClause
-
H
H
---------
---------------------
H
H
of generic class
H
H
H
H
-------------------------
--------------------------
H
H
H
H
-------- ,
------
H
H
Super-
H
H
---------
-------------
H
H
-
extends -
ClassType
-
-
implements -
-
InterfaceType
-
H
H
---------
-------------
H
H
H
H
------------
---------------------------------
H
H
H
H
C l a s s B o d y H
H
-------------------------------
H
H
H
H
C l a s s B o d y Declaration
H
H
------------------------
H
H
-
{ -
-
-
ClassMemberDeclaration
-
-
} -
H
H
------------------------
H
H
H
H
------------------------
H
H
-
ConstructorDeclaration
-
H
H
------------------------
H
H
H
H
-
static ---
Initializer
H
H
-------
H
H
------------
----
Block
-
H
H
instance
-------
H
H
H
H
---------------------------------
H
H H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
092: ClassInstanceCreationExpres. KlassenInstanzErzeugungsAusdruck
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H Allocator H
H -
---------------------
new -
H
H
H
H
--------------------------
H
H
--------------------------
H
H
-
NonWildTypeArgumentClause
-
accessible H
H
--------------------------
Non-Enum- H
H
of generic constructor
--------------------
H
H
------------------------------
-
ClassOrInterfaceType
-
H
H
---------
Allocator
--------------------
H
H
---
Primary
-
. -
new -
H
H
---------
H
H
--------------------------
H
H
--------------------------
H
H
-
NonWildTypeArgumentClause
-
H
H
--------------------------
Constructor-
H
H
of generic constructor
------------
H
H
------------------------------
-
Identifier
-
H
H
------------
H
H
-------------------------------------------------
H
H
--------------------------
H
H
-
NonWildTypeArgumentClause
-
H
H
--------------------------
H
H
of generic class
H
H
-------------------------------
-------------------------
H
H
----------------
-----------
H
H
-
ArgumentClause
-----------
-
ClassBody
--------
-
H
H
----------------
-----------
H
H of constructor
of anonymous class
H
H
-----------------------
H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
093: EnumConstant AufzählungsKonstante
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H
-----------------
H
H
------------
H
H -
-
Annotation
-
H
H
------------
H
H
H
H
EnumConstant- H
H
------------
--------------
-----------
H
H
-
Identifier
-
-
ArgumentClause
-
-
-
ClassBody
-
-
H
H
------------
--------------
-----------
H
H
of EnumConstant
H
H
-------------------
----------------
H
H H
H An EnumConstant defines an in- Eine AufzählungsKonstante de- H
H stance of the EnumType. finiert eine Instanz des Auf- H
H zählungsTyp(s). H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
094: EnumDeclaration AufzählungsVereinbarung
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H
--------------------
H
H
---------------
H
H -
-
ClassModifier
-
H
H
---------------
H
H
H
H
Enum-
------- ,
------
H
H
-----------
-------------
H
H
-
enum -
Identifer
-
-
implements -

InterfaceType
-
H
H
-----------
-------------
H
H
H
H
--------------------------
--------------------------------
H
H
H
H
E n u m B o d y H
H
-----------
H
H
---- ,
----
-
, -
-
ClassBody-
-
H
H
--------
Declaration
H
H
Enum-
-----------
H
H
-
{ 



Constant
-

-----
-
;
---------------

-
} -
H
H
--------
H
H
H
H
----------------
-----------------------
H
H H
H A ClassModifier for an Enum- Ein KlassenModifizierer einer H
H Declaration is implicitely fi- AufzählungsVereinbarung ist H
H nal (do'nt write) and must not implizit final (nicht schrei- H
H be abstract. ben) und darf nicht abstract H
H sein. H
H H
H An EnumType must not be expli- Ein AufzählungsTyp darf nicht H
H citely instantiated. explizit instantiiert werden. H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
095: InterfaceMemberDeclaration Schnittst.MitgliedVereinbarung
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
--------------------------
H
H -
-
ConstantFieldDeclaration
----
H
H
--------------------------
H
H
---------------------------
H
H
-
AbstractMethodDeclaration
---
H
H
---------------------------
H
H
-----------------------------
H
H
-
ClassOrInterfaceDeclaration
-
-
H
H
-----------------------------
H
H of member-class or member-interface H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
096: NormalInterfaceDeclaration NormaleSchnittst.Vereinbarung
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
------------------------
H
H
-------------------
H
H -
-
InterfaceModifier
-
H
H
-------------------
H
H
Interface- H
H
-----------
---------------------
H
H
-
interface -
Identifer
-
--
TypeParameterClause
-
H
H
-----------
---------------------
H
H
of generic interface
H
H
H
H
-----------------------------
--------------------------
H
H
--------- ,
-------
H
H
---------------
H
H
-
extends -
-
InterfaceType
-
H
H
---------------
H
H 
--------------------------------
H
H
I n t e r f a c e B o d y H
H
----------------------------------
H
H
----------------------------
H
H
-------
{ -
-
InterfaceMemberDeclaration
--
-
} -
H
H
----------------------------
H
H
------------------------------------
H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
097: Annot.TypeElementDeclaration AnmerkungsTypElem.Vereinbarung
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
--------------------------
H
H -
----
ConstantFieldDeclaration
------------------------
H
H
--------------------------
H
H
-----------------------------
H
H
------------------------
H
H
-
-
AbstractMethodModifier
-
H
H
------------------------
H
H
H
H
------------
Method- empty Formal-
H
H
Annotation-
------------
ParameterClause
H
H
-
ResultType
-
Identifier
---
( -
) ---
H
H
------------
------------
H
H
-----------------------------------------------
H
H
--------------
H
H
-
default -
ElementValue
------------------
-
; -
H
H
--------------
H
H
inner
H
H
-----------------------------
H
H
----
ClassOrInterfaceDeclaration
---------------------
-
H
H
-----------------------------
H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
An AnnotationResultType is a Ein AnmerkungsErgebnisTyp ist
a PrimitiveType or String, ist ein GrundTyp oder Zeichen-
Class or Class Invocation, kette, Class bzw.Class Aufruf,
EnumType, AnnotationType, or AufzählungsTyp, AnmerkungsTyp
an array of one of these oder eine Reihung aus einem
types. dieser Typen.
098: AnnotationTypeDeclaration AnmerkungsTypVereinbarung
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
------------------------
H
H
-------------------
H
H -
-
InterfaceModifier
-
H
H
-------------------
H
H
H
H
Annotation- implicitely extends H
H
-----------
annotation.Annotation H
H
-
@ -
interface -
Identifer
------------------------
H
H
-----------
H
H
H
H
------------------------------------------------------
H
H
H
H
A n n o t a t i o n T y p e B o d y H
H
---------------------------------------
H
H
----------------------------------
H
H
-
{ -
-
AnnotationTypeElementDeclaration
-
-
} -
H
H
----------------------------------
H
H
-----------------------------------------
H
H H
H H
H An user-defined public Annota- Eine benutzerdefinierte public H
H tion A should be defined in a Anmerkung A muß in einer Datei H
H file named A.java. mit Namen A.java vereinbart H
H werden. H
H H
H Several AnnotationType(s) are Mehrere AnmerkungsTyp(en) sind H
H (partly compiler - dependent) (z.T. Compiler-abhängig) vor- H
H predefined: definiert: H
H H
H annotation.Documented H
H annotation.Inherited H
H annotation.Retention H
H annotation.Target H
H Deprecated H
H Override H
H SuppressWarnings H
H H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
099: ElementValue ElementWert
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H
-----------------------
H
H -
-
ConditionalExpression
---------------
H
H
-----------------------
H
H
------------
H
H
-
Annotation
--------------------------
H
H
------------
H
H
------- ,
------
-
, -
-
Element- H
H
------------
Value- H
H
-
{ -

-
ElementValue
-

-----
-
} -
-
- Array- H
H
------------
Initializer H
H
H
H
---------------------
-
H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
100: Annotation Anmerkung
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H AnnotationType- H
H
------
H
H -
@ -
Name
-
H
H
------
H
H
---------------
H
H
E l e m e n t V a l u e P a i r C l a u s e H
H
----------------- ,
------------------
H
H
E l e m e n t V a l u e P a i r
H
H
Element-
H
H
------------
--------------
H
H
-
( -
-


Identifier
-
= -
ElementValue
-

-
) -
H
H
------------
--------------
H
H
S i n g l e E l e m e n t
H
H
--------------
H
H
------------------------
ElementValue
---
H
H
--------------
H
H
E m p t y E l e m e n t
H
H
--------------------------------------------
H
H
H
H
M a r k e r A n n o t a t i o n
H
H
---------------------------------------------------------
-
H
H H
H By convention, value is the Nach Konvention ist value der H
H Method-Identifier in a Single- Methoden-Bezeichner in einem H
H Element. EinzelElement. H
H H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
101: ClassOrInterfaceDeclaration Klass.OderSchnittst.Vereinbarung
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H H
H
------------------------
-
H
H -
-
NormalClassDeclaration
-----
H
H
------------------------
- ClassDeclaration H
H
-----------------
H
H
-
EnumDeclaration
------------
H
H
-----------------
-
H
H
H
H
----------------------------
-
H
H
-
NormalInterfaceDeclaration
-
H
H
----------------------------
- InterfaceDeclaration H
H
---------------------------
H
H
-
AnnotationTypeDeclaration
--
H
H
---------------------------
-
H
H
-
; ----------------------------
-
H
H H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
102: PackageDeclaration PaketVereinbarung
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H H
H
-----------------
H
H
------------
H
H -
-
Annotation
-
H
H
------------
H
H
Package- H
H
------
H
H
-
package -
Name
-
; -
H
H
------
H
H H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
103: ImportDeclaration ImportVereinbarung
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H H
H ClassOrInterface- -
H
H
------
Single- H
H -
import -
-
Name
----------------------
-TypeImport- H
H
------
Declaration H
H
starts with PackageName
-
H
H
H
H
PackageOr-
-
H
H
ClassOrInterface-
H
H
------
TypeImport- H
H
-
Name
-
. -
* ------------
-OnDemand- H
H
------
Declaration H
H
starts with PackageName
-
H
H
H
H
----------
ClassOrInterface- StaticMember-
-
H
H
------
------------
Single- H
H
-
static
-
Name
-
. -
Identifier
-
-StaticImport- H
H
------
------------
Declaration H
H
starts with PackageName
-
H
H
H
H
ClassOrInterface-
-
H
H
------
StaticImport- H
H
-
Name
-
. -
* ------------
-OnDemand- H
H
------
Declaration H
H starts with PackageName
-
H
H
-
; -
H
H The TypeImportOnDemandDeclara- Die TypImportAufNachfrageVer- H
H tion import java.lang.*; is einbarung import java.lang.*; H
H implicitely given. ist implizit vorgegeben. H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
104: CompilationUnit ÜbersetzungsEinheit
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH
H
-------------
H
H
-------------
ClassOr-
H
H
Import-
Interface-
H
H
-
Declaration 
-
-
Declaration 
-
H
H
-------------
-------------
-------------
H
H -

Package-
-
------------------

------------------
-
H
H
Declaration
H
H
-------------
H
H
-----------------
H
H H
H A Modifier of a top level Ein Modifizierer einer Klas- H
H ClassOrInterfaceDeclaration senOderSchnittstellenVereinba- H
H must not be protected, private rung auf oberster Stufe kann H
H or static. nicht protected, private oder H
H static sein. H
H H
HHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHHH