Livro Just Java

Ola folhando este livro no capitulo 10 tem uma brincadeira do peter van der lidem, que eu não entendi nada como o cara faz aquilo!
/* Just Java
Peter van der Linden
April 1, 1996.

\u0050\u0076\u0064\u004c\u0020\u0031\u0020\u0041\u0070\u0072\u0039\u0036
\u002a\u002f\u0020\u0063\u006c\u0061\u0073\u0073\u0020\u0068\u0020\u007b
\u0020\u0020\u0070\u0075\u0062\u006c\u0069\u0063\u0020\u0020\u0020\u0020
\u0073\u0074\u0061\u0074\u0069\u0063\u0020\u0020\u0076\u006f\u0069\u0064
\u006d\u0061\u0069\u006e\u0028\u0020\u0053\u0074\u0072\u0069\u006e\u0067
\u005b\u005d\u0061\u0029\u0020\u007b\u0053\u0079\u0073\u0074\u0065\u006d
\u002e\u006f\u0075\u0074\u002e\u0070\u0072\u0069\u006e\u0074\u006c\u006e
\u0028\u0022\u0048\u0069\u0021\u0022\u0029\u003b\u007d\u007d\u002f\u002a

*/[size=9][/size]

vc pode salvar este codigo e compilar ele na hora de executar! está uma supresa!
mas alguém poderia me explicar o porque disto? eu fiquei boiando! :? :frowning:

Troque todos os “\u00xx” pelos seus equivalentes em ASCII e veja o que ocorre. Por exemplo:
\u0050 = P, \u0076 = v, e assim por diante. Dá um pouco de trabalho.

Esse programa gera uma classe h, e imprime ao ser invocada a string “Hi!”

[quote=thingol]Troque todos os “\u00xx” pelos seus equivalentes em ASCII e veja o que ocorre. Por exemplo:
\u0050 = P, \u0076 = v, e assim por diante. Dá um pouco de trabalho.

Esse programa gera uma classe h, e imprime ao ser invocada a string “Hi!”

[/quote]
valeu! cara o que eu também não entendi, segundo o que eu sabia os comentarios no programa são ignorados pelo compilador? isto é verdade ou não?? porquye neste caso os comentários não foram! :wink:

Se você olhar a especificação vai ver que:
a) Primeiramente são processados todos os “\uXXXX”
b) Depois é que são processados os caracteres (como por exemplo “/” + “*” ou “/” + “/” para formar os comentários.)

Isso não chega a cair em provas de certificação, mas é uma coisa que pode lhe dar problemas.