Very perceptive of you. You're not going to like this. It's a minefield.
The official terminology as defined by the Java Language Specification (JLS) is that inner classes are non-static nested classes. In other words, an inner class always carries with it an implicit reference to an object of the enclosing class. This is the terminology you can expect in the exam.
This
should have been the end of the story. Unfortunately, as you found, many people - including Sun itself in the early days
- use the terms "inner class" and "nested class" interchangeably. And everyone has remained horribly confused ever after. So whenever you come across these terms
you should always be wary about their precise meaning.
Having said that, I do firmly believe that any
SCJP book should use the JLS terminology throughout, and a good tech editor should have caught that in the HR book.
- Peter