In here:
http://java.sun.com/docs/books/tutorial/uiswing/components/toplevel.html#general
It says:
The default content pane is a simple intermediate container that inherits from JComponent, and that uses a BorderLayout as its layout manager.
In here:
http://java.sun.com/docs/books/tutorial/uiswing/components/jcomponent.html
It says:
The JComponent class extends the Container class, which itself extends Component.
This is contradictory, isn't it?
Also what are the top-level containers?
To be honest, swing seems to be peculiar. It has something also called root pane. Android framework has a GUI platform which seems to be much elegant looking than swing. Swing looks like a collection of hacks.