I've been learning Java for a semester and a bit and I've been working with BlueJ which has a handy textbook but it's scarcely a definitive reference - it's quite basic. I recently bought Sam's Teach ...