Here is quick step to learn java: (in my opinion) * grab Sun j2sdk1.4.2 installation file * grab Sun j2sdk1.4.2 doc * prepare JEdit Additional Hints * forget about pointer, start using reference term * keep in mind, passing primitive type (int, short, char, etc) as argument to a function (passing by value) * and passing object as argument to a function (passing reference by value) * mutable/imutable object decided whether there is get-setter method or not. * learn the difference between deep copy and shallow copy from this link http://www.javaworld.com/ * java only support single inheritance in class level, but support muliple inheritance in interface level. * visit http://www.informit.com/store/java-developers-almanac-1.4-volume-1-examples-and-quick-9780201752809 there is huge snippet code right there. * learn GoF Gang of Four (optional) * practice makes perfect Hope this help you and still there is java information out there.