Java es un lenguaje de programación informática de uso general que es concurrente, basado en la clase, orientado a objetos, y específicamente diseñado para tener tan pocas dependencias de implementación como sea posible. Se pretende que los desarrolladores de aplicaciones “escriban una vez, ejecutar en cualquier lugar” (WORA), lo que significa que el código Java compilado puede ejecutarse en todas las plataformas que soportan Java sin necesidad de recompilación. Las aplicaciones Java normalmente se compilan a bytecode que puede ejecutarse en cualquier máquina virtual Java (JVM) independientemente de la arquitectura del equipo. A partir de 2016, Java es uno de los lenguajes de programación más populares en uso, en particular para las aplicaciones web cliente-servidor, con un informe de 9 millones de desarrolladores. Java fue originalmente desarrollado por James Gosling en Sun Microsystems (que ya ha sido adquirido por Oracle Corporation) y lanzado en 1995 como un componente básico de la plataforma Java de Sun Microsystems. El lenguaje deriva gran parte de su sintaxis de C y C ++, pero tiene menos instalaciones de bajo nivel que cualquiera de ellos.
La implementación original y de referencia Los compiladores Java, las máquinas virtuales y las bibliotecas de clases fueron lanzados originalmente por Sun bajo licencias propietarias. A partir de mayo de 2007, de acuerdo con las especificaciones de Java Community Process, Sun renovó la mayoría de sus tecnologías Java bajo la GNU General Public License. Otros han desarrollado implementaciones alternativas de estas tecnologías de Sun, como el compilador GNU para Java (compilador de bytecode), GNU Classpath (bibliotecas estándar) e IcedTea-Web (complemento de navegador para applets).
La última versión es Java 8 Update 121, que es la única versión actualmente soportada de forma gratuita por Oracle, aunque las versiones anteriores son compatibles tanto con Oracle como con otras compañías sobre una base comercial.