Well, it has some meaning. In regular expressions, $ means the end of the string. In class names, it is used for nested classes. For instance, the class file for Map.Entry is called Map$Entry.class, and anonymous inner classes compile to class files Outer$1.class, Outer$2.class, etc.
(Note that $ is valid for Java identifiers, so you can use $ inside your own class names as well. Just don't do this, ever.)