This week's book giveaway is in the Mac OS forum. We're giving away four copies of a choice of "Take Control of Upgrading to Yosemite" or "Take Control of Automating Your Mac" and have Joe Kissell on-line! See this thread for details.
If you have a class that is so tied to another class that it makes no sense for the one class to exist without the other. An example from the API is the Entry class which is an inner class of the Map class. Entry represents a key-value pair in a Map so it makes sense to make Entry an inner class of Map.