¿Qué es?

Java es un lenguaje de programación orientado a objetos, fuertemente tipado y multiplataforma, diseñado para ejecutar código de manera segura y portable.


Su principal característica es:

👉 “Write Once, Run Anywhere” (Escribe una vez, ejecuta en cualquier lugar)

Esto es posible gracias a la JVM (Java Virtual Machine), que actúa como una capa intermedia entre tu código y el sistema operativo.

¿Para qué sirve?


Java se utiliza en sistemas reales de alto nivel, por ejemplo:

  • 🏦 Banca: sistemas core bancarios (Scotiabank, BCP)
  • 🛒 E-commerce: backend de plataformas como Amazon
  • 📱 Mobile: aplicaciones Android
  • ☁️ Microservicios: APIs escalables con Spring Boot
  • 🏢 Sistemas empresariales (ERP, CRM)

👉 En producción, Java es sinónimo de robustez, seguridad y escalabilidad

Conceptos clave

  • JDK (Java Development Kit) → Herramientas para desarrollar
  • JRE (Java Runtime Environment) → Entorno para ejecutar
  • JVM (Java Virtual Machine) → Motor que ejecuta el bytecode
  • Bytecode → Código intermedio generado por Java
  • Compilación.java.class
  • Ejecución → JVM interpreta el .class

Reglas importantes

  • Java es case sensitive (mainMain)
  • Todo código vive dentro de una clase
  • El método de entrada siempre es:
public static void main(String[] args)

Errores comunes

  • ❌ Pensar que Java es interpretado directamente (NO → se compila a bytecode)
  • ❌ Confundir JDK con JRE
  • ❌ No entender el rol de la JVM
  • ❌ Problemas de PATH al instalar Java
  • ❌ Escribir código fuera de una clase

Ejemplo de código

public class HolaMundo {

    public static void main(String[] args) {
        System.out.println("Hola, mundo desde Java");
    }

}

🔎 Flujo real:

  1. Guardas archivo: HolaMundo.java
  2. Compilas:
javac HolaMundo.java
  1. Se genera:
HolaMundo.class
  1. Ejecutas:
java HolaMundo

Ejemplo de vida real

Imagina esto en un banco:

  • El equipo desarrolla un sistema en Java
  • El sistema se despliega en:
    • Linux (servidores)
    • Windows (entornos internos)
    • Cloud (AWS, Azure)

👉 Gracias a la JVM, el mismo código funciona en todos sin cambios

Diagrama conceptual

Uso en proyectos reales

En arquitectura real backend:

👉 La JVM permite:

  • Manejo de memoria automático (Garbage Collector)
  • Seguridad (sandbox execution)
  • Alto rendimiento (JIT Compiler)

Conclusión

Java no es solo un lenguaje, es un ecosistema completo de ejecución.

Lo importante que debes dominar desde el inicio:

  • Entender la diferencia entre código fuente, bytecode y ejecución
  • Comprender el rol crítico de la JVM
  • Saber cómo se compila y ejecuta un programa

👉 Si dominas esto, ya estás pensando como backend developer profesional.