In that case GUIs (Swing) would be a good place to go next.
JamesCherrill
Posting Genius
6,371 posts since Apr 2008
Reputation Points: 2,130
Solved Threads: 1,073
And J2EE if you're interested in the web/enterprise branch of Java.
Ezzaral
Posting Genius
15,986 posts since May 2007
Reputation Points: 3,250
Solved Threads: 847
Study Swing. AWT was the original GUI, and parts are still there underneath Swing, but the design was flawed and Swing replaced it around about Java 1.2
Concurrency is about programming for machines that have many processors, so you have to write your program in such a way that it can execute in many concurrent (ie simultaneous) threads. Check out the enhancements in Java 7 - these include some threading enhancements for concurrency. But before you get seriously into this topic you need to fully master Threads in their current form.
JamesCherrill
Posting Genius
6,371 posts since Apr 2008
Reputation Points: 2,130
Solved Threads: 1,073
Here's a suggestion:
Have a go at the "chat" application. Multiple clients with a GUI to log on then send messages to the other clients, displaying all the messages in a scrolling window, optional buttons for bold/italic or whatever (can be a complex as you like - drop-down lists for fonts, colour pickers etc) - it gets you into GUI, TCP/IP networking via Sockets, and multiple threads - all really good things to learn about.
JamesCherrill
Posting Genius
6,371 posts since Apr 2008
Reputation Points: 2,130
Solved Threads: 1,073
IMHO you can't beat the Oracle tutorials
http://download.oracle.com/javase/tutorial/uiswing/
ps: I would personally recommend skipping the NetBeans bit at first. GUI IDE's are a great tool, but it's important to understand what they are doing and why. I would start with just an editor and compiler until you have a good understanding of layout managers and listeners, then use advanced tools afterwards.
JamesCherrill
Posting Genius
6,371 posts since Apr 2008
Reputation Points: 2,130
Solved Threads: 1,073
Eclipse/NetBeans - very similar in capabilities etc, so either will do, but I agree with your instructor who says "yes, but not yet".
(If you are already used to Eclipse then that's OK, but don't try using any GUI builder/code generation tools yet).
JamesCherrill
Posting Genius
6,371 posts since Apr 2008
Reputation Points: 2,130
Solved Threads: 1,073
Netbeans and Eclipse include them, to name but two. It's a GUI environment where you can select Swing components from a list then drag and drop them onto your window design, and edit their properties in a little property editor. If you want a better description have a quick look at the NetBeans section in the tutorial I linked you before.
Its quite productive for straight forward designs, but less useful for more advanced stuff, and the property editors shield you from the actual code, which is not good for learning.
JamesCherrill
Posting Genius
6,371 posts since Apr 2008
Reputation Points: 2,130
Solved Threads: 1,073
A few months back Google had acquired an organization which specialized in created UI builders for Swing / SWT (the toolkit which powers Eclipse) and open sourced it. Not sure how good it is but worth a try if you are into creating drag-n-drop UI's.
~s.o.s~
Failure as a human
11,938 posts since Jun 2006
Reputation Points: 3,281
Solved Threads: 734
It's called Swing not swings
JamesCherrill
Posting Genius
6,371 posts since Apr 2008
Reputation Points: 2,130
Solved Threads: 1,073