For object oriented languages I feel the class header should ALWAYS be commente.
_Especially if the classname is a generic one like *HashTable_.
One of many nuiances working with legacy code is figuring out in which context(s) classes are used and sometimes the mere purpose of them without reading through the entire class.
If you call outside objects methods its useful to briefly tag them with a comment or even a @see doclet.