This week's giveaway is in the EJB and other Java EE Technologies forum. We're giving away four copies of EJB 3 in Action and have Debu Panda, Reza Rahman, Ryan Cuprak, and Michael Remijan on-line! See this thread for details.
The convention is that identifiers should begin with a letter (Upper-case for class/interface/enum names, lower-case for everything else) and then contain letters and numbers only. $_ are permitted by the compiler, but should be avoided.
The exceptions are:
Package names may contain underscores _ and may begin with underscore (see this Java™ Tutorials section) and are lower-case throughout
Constant identifiers (public static final) are UPPER_CASE throughout with words separated by underscores
You will see identifiers beginning with $; those names are added automatically by compilers.