I need a tutorial to teach myself Java programming. I have good experience in a couple programming languages, but absolutely no experience with Java. Therefore, I need the tutorial to start with the basics of Java programming, but it doesn't have to cover the basics of general programming logic.
If the tutorial also doubles as a reference for deeper and less known stuff, that's even better, but the important part is that it starts from the bottom.
(I'm embarrassed. I was going to mark this as community wiki but forgot to mark before posting. Could a moderator fix it, please?)