Podemos clasificar los lenguajes de programación atendiendo a distintos criterios
Ejemplo de código máquina:
0010 0000 1001 1001 1000 1110
Ejemplo de lenguaje ensamblador:
MOV R1, DPL CJNE R1, #78H, T05SEG RET
Hay una serie de elementos que están presentes en casi todo lenguaje de programación:
Java es un lenguaje de programación de alto nivel, de propósito general y con una sintaxis ampliamente derivada de C/C++. Fue creado originalmente por Sun Microsystems (actualmente propiedad de Oracle) en 1995.
Entre sus pilares fundamentales destacan:
.java) a un código intermedio universal llamado bytecode (archivos .class).
Los archivos de código fuente en Java tienen la extensión .java y su nombre debe coincidir exactamente con la clase principal que contienen.
public class HolaMundo {
static void main() {
IO.println("Hola Mundo");
}
}
Existen dos formas de ejecutar este programa desde la consola:
1. Ejecución directa en un solo paso: Ideal para pruebas rápidas. Compila en memoria y ejecuta el resultado de forma transparente:
java HolaMundo.java
2. Proceso tradicional en dos pasos (entornos de producción):
1. Compilar el código fuente a bytecode (genera el archivo HolaMundo.class):
javac HolaMundo.java
2. Ejecutar el bytecode compilado en la JVM:
java HolaMundo
java un archivo ya compilado, no debemos poner la extensión .class, solo el nombre de la clase. Esta ejecución es más rápida porque no requiere recompilar el código.
El compilador de Java genera un archivo .class por cada clase definida en nuestro código fuente, independientemente de si están en el mismo archivo .java o en archivos separados.
public class HolaMundo2 {
static void main() {
IO.println("Hola Mundo 2");
}
}
class HolaMundo3 {
static void main() {
IO.println("Hola Mundo 3");
}
}
Al ejecutar javac HolaMundo2.java, se generarán dos archivos independientes: HolaMundo2.class y HolaMundo3.class.
.java solo puede contener una clase pública (public) como máximo, y el nombre del archivo debe coincidir exactamente con el nombre de dicha clase.
Vamos a ver la estructura del ejemplo anterior HolaMundo.java:
public class HolaMundo {
static void main() {
IO.println("Hola Mundo");
}
}
public class HolaMundo: Define la clase. Todo código en Java debe residir dentro de una clase.{ }): Delimitan los bloques de código (clases, métodos, bucles, etc.).static void main(): Es el método de entrada (punto de inicio) de la aplicación. La JVM busca y ejecuta automáticamente este método al arrancar el programa.IO.println(…): Instrucción que imprime el texto indicado por pantalla y añade un salto de línea.Las instrucciones se ejecutan secuencialmente (de arriba a abajo) y deben terminar obligatoriamente con punto y coma (;).
static void main() {
IO.println("Primera instrucción");
IO.println("Segunda instrucción");
}
Aunque Java no obliga a sangrar el código para que compile (a diferencia de Python), la indentación es fundamental para garantizar la legibilidad del proyecto. Se recomienda usar 4 espacios por cada nivel de anidamiento.
Ejemplo con correcta indentación:
public class HolaMundo {
static void main() {
IO.println("Código fácil de leer");
}
}
Los comentarios son anotaciones dentro del código fuente que el compilador ignora por completo. Su objetivo es explicar la lógica del programa, añadir notas aclaratorias o generar documentación técnica.
En Java podemos escribir comentarios de tres formas:
//)./* y */./** y */ para generar documentación técnica en HTML.
/**
* Comentario de documentación (JavaDoc).
* Muestra información sobre la clase o el autor.
*/
public class HolaMundo {
static void main() {
/*
* Comentario de bloque o multilínea.
* Útil para detallar algoritmos o bloques
* de código complejos.
*/
// Comentario de una línea: explica la instrucción siguiente
IO.println("Hola mundo");
}
}