Este lenguaje tiene la particularidad de ser compilado e interpretado al mismo tiempo; esto significa que es un lenguaje simplificado que convierte automáticamente el código en instrucciones de máquina.
En un principio el lenguaje comenzó como una forma para conectar sistemas dentro de las oficinas y otros espacios de comunicación, pero al cambiar el enfoque hacia el mundo online Java trascendió esta frontera y entró de lleno en la web 2.0, o red interactiva.
JavaScript es un lenguaje exclusivamente interpretado, mientras que Java es un lenguaje compilado e interpretado a la vez. Esto puede parecer un detalle menor, pero en realidad implica algunas limitantes para los programadores, ya que con JavaScript se debe compilar el código para diferentes dispositivos, cuando con Java esto se hace automáticamente.
En Java, todo es considerado como un objeto y este es uno de los principios de su enfoque basado en el polimorfismo. Esto implica que cada elemento dentro del código tiene un comportamiento y estado, lo cual añade estructura al lenguaje y permite aplicar diferentes implementaciones a los objetos. Las clases son las plantillas que Java utiliza para denominar a los objetos, mientras que las instancias permiten hacer referencia a ellos durante la ejecución del programa. Por su parte, la herencia permite usar el mismo código de una clase en otras clases que heredan de ella sus métodos (funciones) y sus atributos.