The book shows how to incorporate advanced data structures in object-oriented programs, and thus promotes understanding of object-orientation and how it improves program efficiency. No prior knowledge of Java programming is presupposed, as the book is self-contained with full coverage of data modeling and object-oriented programming in Java.