¿Qué es Java?
Java es un lenguaje de programación de propósito general, concurrente, orientado a objetos y basado en clases. Fue desarrollado por Sun Microsystems (ahora parte de Oracle Corporation) y lanzado en 1995. Java es conocido por su portabilidad, lo que significa que el código escrito en Java puede ejecutarse en cualquier dispositivo que tenga una Máquina Virtual de Java (JVM).
Características Clave de Java
- Orientado a Objetos: Java sigue el paradigma de la programación orientada a objetos (POO), lo que facilita la creación de aplicaciones modulares y reutilizables.
- Portabilidad: "Escribe una vez, ejecuta en cualquier lugar" (WORA). El código Java se compila en bytecode, que puede ejecutarse en cualquier JVM.
- Seguridad: Java proporciona un entorno seguro para la ejecución de aplicaciones, con características como la gestión automática de memoria y la verificación de bytecode.
- Multihilo: Java soporta la programación multihilo, lo que permite la ejecución concurrente de varias partes de un programa.
- Robustez: Java tiene una gestión de excepciones y un manejo de errores que ayuda a crear aplicaciones robustas.
- Rendimiento: Aunque no es tan rápido como los lenguajes compilados nativos, Java ofrece un rendimiento razonable gracias a la optimización de la JVM.
Historia de Java
- 1991: James Gosling, Mike Sheridan y Patrick Naughton iniciaron el proyecto "Green" en Sun Microsystems.
- 1995: Se lanzó la primera versión pública de Java (Java 1.0).
- 1997: Java 1.1 introdujo mejoras significativas, incluyendo la serialización de objetos y la reflexión.
- 2004: Java 5.0 (también conocido como J2SE 5.0) introdujo características como genéricos, enumeraciones y el bucle for-each.
- 2014: Java 8 introdujo expresiones lambda, la API de Streams y la nueva API de fecha y hora.
- 2017: Oracle anunció que Java 9 incluiría el sistema de módulos (Project Jigsaw).
Ecosistema de Java
Java no es solo un lenguaje de programación; es un ecosistema completo que incluye:
- JDK (Java Development Kit): Herramientas necesarias para desarrollar aplicaciones Java, incluyendo el compilador
javac
. - JRE (Java Runtime Environment): Entorno necesario para ejecutar aplicaciones Java, que incluye la JVM y las bibliotecas estándar.
- JVM (Java Virtual Machine): Máquina virtual que ejecuta el bytecode Java.
Primer Programa en Java
Vamos a escribir y ejecutar nuestro primer programa en Java: "Hola, Mundo".
Código de Ejemplo
public class HolaMundo { public static void main(String[] args) { System.out.println("Hola, Mundo"); } }
Explicación del Código
- public class HolaMundo: Define una clase pública llamada
HolaMundo
. En Java, todo el código debe estar dentro de una clase. - public static void main(String[] args): El método
main
es el punto de entrada de cualquier aplicación Java. Es donde comienza la ejecución del programa. - System.out.println("Hola, Mundo"): Imprime el texto "Hola, Mundo" en la consola.
Ejecución del Programa
- Compilación: Usa el comando
javac
para compilar el archivo.java
en bytecode.javac HolaMundo.java
- Ejecución: Usa el comando
java
para ejecutar el bytecode.java HolaMundo
Ejercicio Práctico
Ejercicio 1: Modificar el Programa
Modifica el programa "Hola, Mundo" para que imprima tu nombre.
Solución
public class HolaMundo { public static void main(String[] args) { System.out.println("Hola, [Tu Nombre]"); } }
Ejercicio 2: Crear un Programa de Suma
Escribe un programa que sume dos números y muestre el resultado.
Solución
public class Suma { public static void main(String[] args) { int num1 = 5; int num2 = 10; int suma = num1 + num2; System.out.println("La suma es: " + suma); } }
Retroalimentación y Consejos
-
Errores Comunes:
- Sintaxis: Asegúrate de que cada línea de código termine con un punto y coma (
;
). - Nombres de Clases y Archivos: El nombre del archivo debe coincidir con el nombre de la clase pública.
- Método
main
: Debe ser exactamentepublic static void main(String[] args)
.
- Sintaxis: Asegúrate de que cada línea de código termine con un punto y coma (
-
Consejos:
- Practica escribiendo y ejecutando pequeños programas para familiarizarte con la sintaxis de Java.
- Usa comentarios (
//
) para anotar tu código y hacerlo más legible.
Conclusión
En esta lección, hemos introducido Java, sus características clave y su historia. También hemos escrito y ejecutado nuestro primer programa en Java. En la próxima lección, configuraremos el entorno de desarrollo para que puedas empezar a escribir y ejecutar tus propios programas en Java.
Curso de Programación en Java
Módulo 1: Introducción a Java
- Introducción a Java
- Configuración del Entorno de Desarrollo
- Sintaxis y Estructura Básica
- Variables y Tipos de Datos
- Operadores
Módulo 2: Flujo de Control
Módulo 3: Programación Orientada a Objetos
- Introducción a la POO
- Clases y Objetos
- Métodos
- Constructores
- Herencia
- Polimorfismo
- Encapsulamiento
- Abstracción
Módulo 4: Programación Orientada a Objetos Avanzada
Módulo 5: Estructuras de Datos y Colecciones
Módulo 6: Manejo de Excepciones
- Introducción a las Excepciones
- Bloque Try-Catch
- Throw y Throws
- Excepciones Personalizadas
- Bloque Finally
Módulo 7: Entrada/Salida de Archivos
- Lectura de Archivos
- Escritura de Archivos
- Flujos de Archivos
- BufferedReader y BufferedWriter
- Serialización
Módulo 8: Multihilo y Concurrencia
- Introducción al Multihilo
- Creación de Hilos
- Ciclo de Vida de un Hilo
- Sincronización
- Utilidades de Concurrencia
Módulo 9: Redes
- Introducción a las Redes
- Sockets
- ServerSocket
- DatagramSocket y DatagramPacket
- URL y HttpURLConnection