Este libro está dedicado a personas con experiencia en programación estructurada que desean introducirse en la programación orientada a objetos o consolidar sus conocimientos. Aunque los conceptos básicos se presentan de forma general, se desarrollan en Java. Desde la versión 5.0, Java ha incorporado innovaciones que lo mejoran sustancialmente, como la genericidad y el unboxing automático, convirtiéndolo en un lenguaje orientado a objetos muy utilizado y elegante. El libro tiene un enfoque práctico, con ejemplos y ejercicios, explicaciones claras y énfasis en la reutilización de código, el tratamiento de excepciones, el uso de colecciones, el diseño de interfaces gráficas y la gestión de entrada/salida.