Tiene sentido decir que vas a descargar (e instalar) la maquina virtual de Java, ya que es un lenguaje "medio" interpretado (hibrido), pero no puedes "Descargarte" Java (O C++) por la misma razon por la que no puedes "Comer comida", literalmente.
¿Puedes decir "Voy a comer comida"? Si, yo diria que mas bien coloquialmente. Vas a comer pasta, arroz, o pollo. Pero la "Comida" en si es un concepto abstracto que abarca muchas cosas y que como concepto abstracto que es, no se puede comer. A menos que tengas estomago de filosofo.
Cada lenguaje tiene un programa anexo en el cual se escribe el lenguaje?
¿Cuando fue la ultima vez que actualizaste el programa que utilizas para hablar en Español?
Son lenguajes de programacion. Representan codigo, es todo.
Son leidos por un compilador/inteprete/maquina virtual y ejecutados en un procesador.
Puedes escribirlos en un IDE, notepad, gedit, una servilleta o en papel de baño antes de "Plantar un pino".