I pretty much agree with HeroesGraveDev. I also recommend Swing.
I’ve got the following link bookmarked, as I find it hard to remember all the Swing components and their details.
http://docs.oracle.com/javase/tutorial/uiswing/components/index.html
A JFrame is a “Top Level Container”. You can get a good explanation of JFrame in the section: “Using Top-Level Containers.” I’ve never used a JWindow. I should look into it!
A JPanel is a container in which one can draw and/or put other components (such as buttons, sliders, textfields, etc.). It is possible to draw on a JFrame, but you have to get to a special layer of JFrame. I find it simple enough to just add a JPanel to a JFrame and go from there. Separating out the “top-layer” functionality from the game play is most often the right way to go anyway. If your game is mostly on a JPanel, then it is easier to make top-level changes such as creating an Applet version of the game.
If you are only intending to draw animations, and not place any components like buttons or labels, one can use a JComponent instead of a JPanel. But for getting started JPanel’s are a pretty decent, all-purpose solution.
Welcome to JGO! I hope you find a lot of great info and inspiration here.