Estou lendo para o SCJP e tenho uma pergunta sobre esta linha:
Os identificadores devem começar com uma letra, um caractere de moeda ($) ou um caractere de conexão, como o sublinhado (_). Os identificadores não podem começar com um número!
Ele afirma que um nome de identificador válido pode começar com um caractere de conexão , como sublinhado. Eu pensei que sublinhados eram a única opção válida? Quais outros caracteres de conexão existem?
_
é um identificador "obsoleto". Especificamente, o compilador emite o seguinte aviso: (o uso de '_' como um identificador pode não ser suportado em releases após o Java SE 8) .
_
para uso em recursos de idiomas futuros . Os identificadores que começam com um sublinhado ainda estão ok, mas um único sublinhado é um erro se usado como um nome de parâmetro lambda e um aviso em qualquer outro lugar.
. ; [ / < > :
é: stackoverflow.com/questions/26791204/… docs.oracle.com/javase/specs/jvms/se7/html/… Todo o resto é uma restrição apenas para Java.
_, _ -> doSomething();
.