views:

358

answers:

6

I program in C++ for a living. My last serious exposure to Java was in 1996.

What's a good self-study way to get up to date on modern Java? (Bonus points if it can be done online.)

+6  A: 

Use the Sun getting started page. These tutorials are built in a way to offer you different 'trails' depending on what aspect of Java you want to learn.

Getting up to speed with Java shouldn't take you too long since the syntax is similar to C++ and in general Java is more simple to work with. You should be fine jumping right into a project and learning as you go.

You can also read Bruce Eckel's free online books:

  • Thinking in Enterprise Java Revision 1.1 - May 6, 2003
  • Thinking in Java, 3rd Edition Revision 4.0 - November 20, 2002: Final Version to Printer
  • Thinking in Java, 2nd edition Revision 12 - June 12 2001
  • Thinking in Java, 1st edition
  • Thinking in Patterns Revision 0.9 - May 20, 2003
Brian R. Bondy
+1  A: 

Well, you could try the tutorials sun has in : http://java.sun.com/developer/onlineTraining/ http://java.sun.com/docs/books/tutorial/ but this is focused more in web applications, there aren't many tutorials that specialize in desktop applications

sinisterff
A: 

You should first try some IDEs and choose one, here is a good list of Java IDEs and Editors,

I leave you also a pair of tutorials for two of the most used IDEs, NetBeans and Eclipse.

Also here is a very good tutorial to get started with the language...

CMS
A: 

Check out this question. For Java books, resources and websites.

Aaron Maenpaa
A: 

I second the recommendation of Sun's Java tutorials. Years ago, I taught myself most of Java using just those tutorials.

At the risk of sounding sexist: The tutorials are mostly written by women, and there is a noticeable difference in style. Whereas a guy will tend to throw the facts at your feet and let you sink or swim, these ladies bring across a heartfelt desire to help you learn this stuff. The language is just a tad gentler, warmer, more personal than what's typically found in technical information.

If you're a "just the facts" kinda guy, I also heartily recommend Just Java by Sun's Peter van der Linden. He has an engaging and entertaining style, and he gives you a LOT of facts to work with, explained from a "nuts and bolts" perspective. PvL is a former C programmer and is able to bring a bit of that perspective to bear.

+3  A: 

I've learned a lot from Joshua Bloch's Effective Java, which can be read online via O'Reilly's Safari site. Assuming that you remember the Java fundamentals and that you are fairly well-versed in OOP, the book will bring you up to speed on newer language features (like generics and java.util.concurrent) and various subtleties of Java program design.

Chris Conway