inheritance overuse?



Am I the only one who thinks that inheritance tends to get confusing quickly when an object has a lot of ancestors? For instance, in Java, a class might be derived 7 times over. Then, it seems like you're expected to look thru the docs for those 7 ancestor classes to figure out how to use the object. Are there good rules of thumb as to how deep inheritance ought to go?
.