A literal (§3.10) denotes a fixed, unchanging value.
The following production from §3.10 is repeated here for convenience:
Literal:
IntegerLiteral
FloatingPointLiteral
BooleanLiteral
CharacterLiteral
StringLiteral
NullLiteral
The type of a literal is determined as follows:
L
or l
is long
; the type of any other integer literal is int
.F
or f
is float
; the type of any other floating-point literal is double
.boolean
.char
.String
.null
is the null type; its value is the null reference.Evaluation of a literal always completes normally.