Este libro está especialmente dedicado a aquellas personas con alguna experiencia en el uso de lenguajes de programación estructurada que quieren introducirse en el mundo de la programación orientada a objetos, o afianzar los conceptos propios de este paradigma. Aunque los conceptos básicos se presentan de forma general e independiente del lenguaje, éstos se desarrollan en el lenguaje Java.

Desde la versión 5.0 de Java, se han introducido numerosas innovaciones en este lenguaje que lo mejoran sustancialmente, como la genericidad, boxing/unboxing automático, etc., convirtiéndolo en uno de los lenguajes orientados a objetos más utilizados, elegantes y que mejor implementan los mecanismos de este paradigma de programación.

El presente libro se ha diseñado con un enfoque muy práctico, con múltiples ejemplos y ejercicios, con explicaciones claras y didácticas, y haciendo especial hincapié en los pilares básicos del lenguaje: reutilización de código, tratamiento de excepciones, uso de colecciones, diseño de interfaces gráficas de usuario y gestión de entrada/salida.