Tal vez para algunos sea obvia esta pregunta pero todavía hay personas con dudas al respecto.
Debido a su parecido en el nombre muchos piensan que Java y JavaScript están relacionados o que de alguna forma Java es un subconjunto de JavaScript. Lo cierto es que no tienen nada que ver una con la otra.
Java fue creado por la empresa Sun Microsystems, de la mano de James Gosling en el año 1991. Su objetivo principal era crear aplicaciones para receptores de televisión y dispositivos embebidos, aunque al final haya terminado funcionando en casi todas partes. Su nombre inicial era Oak, luego Green, pero finalmente lo llamaron Java.
JavaScript es un lenguaje de programación creado a mediados de los años 90 en la empresa Netscape por Brendan Eich. Su objetivo era implementar interactividad a las páginas web visualizadas con su navegador de Internet “Netscape Navigator». Durante su desarrollo pensaban llamarlo LiveScript, pero finalmente lo denominaron JavaScript por la gran influencia en su sintaxis por parte del lenguaje Java. JavaScript se encuentra integrado en otras muchas aplicaciones además de los navegadores: servidores, lenguajes de programación de propósito específico como Node.js o sistemas operativos como Windows.
Aparte de esa raíz común en el nombre, Java y JavaScript son lenguajes totalmente diferentes. Y aquí te mostramos algunos ejemplos importantes de sus muchas diferencias:
JavaScript es un lenguaje interpretado, y Java es compilado. Los programas JavaScript son archivos de texto que pueden leer tanto los ordenadores como las personas, mientras que los de Java se compilan a un archivo especial optimizado para que lo lea un ordenador y lo ejecute.
Java se depura en dos fases y JavaScript en una. Como con todos los lenguajes interpretados, en JavaScript solamente sabes si has cometido un error de sintaxis cuando vas a ejecutar el programa. En Java sin embargo, primero se realiza la fase de compilación, en la que el compilador ya indica los posibles errores de sintaxis que existan.
Java es un lenguaje orientado a objetos puro, pero JavaScript está basado en prototipos. JavaScript debe simular muchas de las características de orientación a objetos que se dan en la mayoría de los lenguajes. A cambio proporciona diversos paradigmas de programación lo que lo convierte en un lenguaje tremendamente versátil. De hecho en JavaScript es posible cambiar la «base» de la que hereda una clase en cualquier momento, afectando a todas, cosa imposible en la mayoría de los lenguajes.
JavaScript tiene clausuras, Java las acaba de incorporar. Uno de los conceptos más importantes en la programación con JavaScript (y en otros lenguajes) son las clausuras. Java no las tuvo hasta la versión 8 aparecida hace poco tiempo.
Hola, buen artículo.. pero te comento que ya casi no habrá diferencia, porque Java ahora permite ejecutar JavaScript
http://www.oracle.com/technetwork/articles/java/jf14-nashorn-2126515.html