Need a crash course in Java

I have a (second) interview for a job next week. They do real-time transaction-based (stuff) for (clients) nationwide.
I'd like to take some initiative and be able to show I can learn Java, maybe even be able to talk about real-time transactions, but that's secondary.

I have over a decade of programming experience, mostly on a Microsoft stack - ASP, C#, .Net, SQLServer, IIS - you get the idea.
So I don't need to know what a for loop is or why you would use conditionals.
I need the "quick, I need to be able to speak/read/find errors in/modify Java code" version of a tutorial.

(Company) is currently using Sun for their OS and DB2 for database, but are in the process of migrating to AIX+mysql.
I'd rather avoid having to install Linux(save it, just don't want to try to learn more than I need *for now*) if I can.

So, who knows a good tutorial for Java for experienced programmers?
Yes, I know Google. My GoogleFu is strong. Just hoping for some GWJer insight/filtering.

You can install Java on windows if you want. Beyond that I can't help much since i don't know sh*t about Java really, so I'll pay attention to this thread

Edit - Legion is fast.

Well, you can pick up O'Reilly's Head First Java. Highly regarded "intro to Java" book, though it's also pretty "intro to programming" too in the earlier chapters.

Then there's the pinnacle of Java books (according to Java-heads): Effective Java, 2nd Ed by Joshua Bloch (formerly of Sun, now Chief Java Architect at Google).

Go to the bookstore and seek out those two specific books.

My Java usage has been pretty light, but I looked into the same sort of thing a little while ago, and the roar of approval from the Java community for these two exact books is deafening.

If you've already done a decent amount of C#/.Net, you already just about know Java. =)

The class libraries are in different packages/names, but really, they are so similar that many of the patterns (and in some cases class names) are the same. Of course, Windows.Forms and similar aren't there, but for system-level code, you'll be able to pick it up pretty quick, I'd bet.

The stuff *Legion* suggests should be good, and between that, google, and Stack Overflow you should be able to answer most "I know how to code, how do I do X in Java?" questions.

I've downloaded JDK6 (SE for now). Not sure what IDEs there are, but I'll wing that. (I seem to remember the choice being one of those Emacs vs. VI type arguments. I just want "easy", and I'm probably not going to be able to use Visual Studio for Java that I can give to a Unix shop.)
I'd rather stick with online resources (for now). Until I hear differently, I'll probably start with Sun's own tutorial/book thing.
http://java.sun.com/docs/books/tutor...

Looks mighty basic, but I can skip over the explanations of basic programming concepts.
But keep 'em coming, especially online resources for a quick learn.

(Oh, my son needs to return a library book. Maybe they'll have one of those books there. )

Eclipse and NetBeans are obvious choices for Java IDEs. Both run on Java themselves, and will be available to you on whatever platform you're using.

There's also IntelliJ IDEA, which I've never used, but also probably worth checking out. But it's not FOSS like the above two.

The JDK I downloaded has NetBeans in it, so I'll start there.

duckilama wrote:

The JDK I downloaded has NetBeans in it, so I'll start there.

I use Eclipse for my daily work, but I've been meaning to really evaluate Netbeans.

Though none of my daily work really involves Java. But both are FOSS cross-platform IDEs with active plugin development communities, adding in support for every language you'd want to use in them.

My impression of them is that Eclipse seems more geared to the "hardcore" (so to speak) and that NetBeans is a good bit easier "out of the box", so that's probably the place to start if you want "easy".

We mostly use Netbeans at work, and would I recommend it as well. As Legion mentioned, it's ready to go right out of the box, so there shouldn't be anything to really worry about on that end. Other than that though, Eclipse and Netbeans both have extensive communities supporting them and will get the job done.

The main hurdle you'll be facing with you C#/.NET experience is learning all different Java packages and API's available, and when to use what where. Doing some exploratory programming combined with reading random tutorials and the (official) Java doc's should get you started.

I'd also like give a good thumbs-up to the Effective Java book mentioned. It may be more than you're looking for, as it might present for info than you're interested in at the moment, but it's an excellent source of information that you can keep going back to as you learn the language.

LupusUmbrus wrote:

The main hurdle you'll be facing with you C#/.NET experience is learning all different Java packages and API's available, and when to use what where. Doing some exploratory programming combined with reading random tutorials and the (official) Java doc's should get you started.

That's the main hurdle coming to Java from pretty much anywhere.

The Java language isn't hard to pick up - hence its explosion as an introductory language in mid-'90s CS departments everywhere - but holy crap, the libraries. The libraries! So huge! Just so much to soak in. I've been meaning to spend some time improving my Java familiarity, as I really haven't touched it seriously since college.

The libraries!

To be fair, .Net has a metric crapton of libraries, too. Not to mention all the 3rd party ones that become "semi-standard" in the business developer community.
Thank goodness for intellisense!
That said, I'd say that the libraries and business type code fall into the 80/20 rule - 80% of the libraries actually used make up about 20% of the libraries available. If that.

Got a basic System.out.println("Hello World!"); to work, so the install worked and the IDE isn't annoying me yet.

The local library had Head First, so I grabbed that. I think I have a new favorite series of tech books. Love the way it's written and presented.

They'll be back on Solaris within 3 years.

Thanks guys. The 2nd interview went really well. Assuming the CIO(or was he the tech director?) gets CEO approval, I should have an offer letter next week. Woot!

Congrats!! /knocking on wood

Late to the party, but congrats! As others mentioned, since you know C#, you basically know Java. A few keywords are the only real difference.

Nice work. Good luck!

Got a phone call. CEO approved the req for me. *Should* have an offer letter by Tuesday. Trying not to get too excited until I have the letter in my hot little hands.

grats ducki, good to hear programmers getting jobs

Arise, thread!

So, I'm osmosing into a new role at work and the app I support is pushing the Java API as the new standard. We have developers in house to help out with plug-ins and integrations but my new supervisor asked me to learn Java to grow this skill on our own team. Mostly proof of concept type stuff so we can sell more services and integration methods and grow the app.

I'm looking at The Java Tutorials right now, linked above pre-Oracle acquisition. Any other resources for a novice programmer? I'm a systems analyst by trade (10+ years) and sub-journeyman web developer (< 3 years experience)

IMAGE(http://books.google.com/books?id=fu5HtixRje8C&printsec=frontcover&img=1&zoom=1&l=220)

Maq wrote:

IMAGE(http://books.google.com/books?id=fu5HtixRje8C&printsec=frontcover&img=1&zoom=1&l=220)

Gracias.

Got an older version of that one, but it's geared towards 1.5. Is there a lot of skew between 1.5 and 1.7?

GioClark wrote:
Maq wrote:

IMAGE(http://books.google.com/books?id=fu5HtixRje8C&printsec=frontcover&img=1&zoom=1&l=220)

Gracias.

Got an older version of that one, but it's geared towards 1.5. Is there a lot of skew between 1.5 and 1.7?

No. Though I'd say the collections framework from 1.6 is definitely nice. Proper sets and maps and all that.