From the reviews of the second edition: "Practitioners in procedural languages looking for a smooth introduction to Java , along with lecturers in object orientation, will definitely appreciate this book. ... aimed at students and software engineers wishing to learn object-oriented programming techniques. ... Each chapter ends with a summary and a set of exercises to emphasize or further develop a particular theme in the chapter. ... this book presents an excellent overview of object orientation; readers will find it well explained. It is a useful introduction to object-oriented software engineering." (Alexandre Bergel, Computing Reviews, Vol. 50 (1), January, 2009)