Lines 5 and 6 are an instance initializer. It is called when the class is instantiated. Since this is an enum with one constant named f
, it is going to be instantiated once and the instance initializer block is executed.
Note that z
is null
, but out
is a static member of class System
, so you can call z.out.printf()
anyway. The printf
statement takes the string s
as a format string with two arguments, 34
and s
itself.
34
is the ASCII code for double quote "
. It is filled in for the %c
and %1$c
in the format string. The %s
in the format string is replaced by the format string s
itself.