CodeGym
AI Academy
Promoción
CodeGym University
Aprendizaje
Cursos
Tareas
Encuestas & Cuestionarios
Juegos
Ayuda
Horario
Comunidad
Usuarios
Foro
Chat
Artículos
Historias de éxito
Actividad
Reseñas
Suscripciones
Tema claro

Lecciones

  • Reseñas
  • Sobre nosotros
Comenzar
Comenzar a aprender
Comienza a aprender ahora
  • Mi progreso
  • Cursos
  • Universidad
  • Mapa de misiones
  • Lecciones
  • Estructura de la memoria en la JVM: pila, heap, PermGen/MetaSpace

    JAVA 25 SELF
    Nivel 64,Lección 0
    Adónde van las variables locales, los objetos y los metadatos de clases durante el proceso de la JVM: analizamos la pila de los hilos, el heap y la evolución de PermGen → MetaSpace. Hablaremos de cómo funciona GC, qué errores de memoria existen ( StackOverflowError, OutOfMemoryError) y cómo influyen las flags de arranque ( -Xss, -Xmx, -XX:MaxMetaspaceSize). Se incluyen esquemas, un diagrama Mermaid y un ejemplo funcional.
    Disponible
  • Recolectores de basura: G1, ZGC, Shenandoah, comparativa

    JAVA 25 SELF
    Nivel 64,Lección 1
    En esta lección explicamos cómo funciona el recolector de basura ( GC) en la JVM, en qué se diferencian los recolectores clásicos Serial/ Parallel/ CMS de los modernos G1, ZGC y Shenandoah, qué son las generaciones joven y vieja, por qué se producen las pausas Stop-the-World y cómo minimizarlas. En la práctica veremos cómo activar distintos GC mediante opciones ( -XX:+UseG1GC, -XX:+UseZGC, -XX:+UseShenandoahGC), ajustar las pausas ( -XX:MaxGCPauseMillis) y el tamaño del heap ( -Xms/ -Xmx), leer los logs ( -Xlog:gc*) y evitar errores típicos (por ejemplo, llamar a System.gc() de forma explícita).
    Disponible
  • Variables locales, fugas de memoria y referencias débiles

    JAVA 25 SELF
    Nivel 64,Lección 2
    De esta lección aprenderás dónde viven las variables locales (la pila del hilo) y en qué se diferencia del heap, por qué en Java sí son posibles las fugas de memoria a pesar del GC y cómo evitarlas. Veremos escenarios reales: colecciones static «eternas», listeners no desregistrados y cachés. Nos familiarizaremos con la familia de referencias: SoftReference, WeakReference, PhantomReference, así como con el contenedor WeakHashMap. Practicaremos cómo corregir fugas y comentaremos por qué la llamada a System.gc() — no es más que una sugerencia para la JVM, no una orden, y en qué puede terminar un OutOfMemoryError.
    Disponible
  • Herramientas de análisis de memoria: jmap, jvisualvm

    JAVA 25 SELF
    Nivel 64,Lección 3
    Guía práctica para diagnosticar problemas de memoria en la JVM: tomamos un volcado de heap ( heap dump) con la utilidad jmap, leemos resúmenes a través de -heap y -histo, exploramos la aplicación en jvisualvm (pestañas Monitor, Heap Dump, Threads, Profiler), resolvemos una fuga a modo de ejemplo y nos familiarizamos con Eclipse MAT y jconsole. Al final — errores frecuentes y consejos.
    Disponible
  • Análisis de errores típicos al trabajar con memoria

    JAVA 25 SELF
    Nivel 64,Lección 4
    Análisis práctico de por qué una aplicación Java puede «perder» memoria y volverse lenta: listeners olvidados ( addActionListener/ removeActionListener), colecciones estáticas eternas, recursos sin cerrar (consejo: try-with-resources), clases anónimas/internas que retienen referencias y abuso de System.gc(). Aprenderemos a leer los registros del GC ( -Xlog:gc*, -XX:+PrintGCDetails), elegir el recolector, construir cachés con WeakHashMap, monitorizar ( jvisualvm, jconsole), analizar heap dumps y configurar correctamente -Xmx/ -Xms. Al final — ejemplos reales de fugas y su corrección.
    Disponible
Aprender
  • Registro
  • Curso de Java
  • Ayuda con tareas
  • Precios
  • Sintaxis de Java
Comunidad
  • Usuarios
  • Artículos
  • Foro
  • Chat
  • Historias de éxito
  • Actividad
  • Programa de afiliados
Empresa
  • Acerca de nosotros
  • Contactos
  • Reseñas
  • Sala de prensa
  • CodeGym para EDU
  • Preguntas frecuentes
  • Soporte
CodeGymCodeGym es un curso en línea para aprender programación Java desde cero. Este curso es una forma perfecta de dominar Java para principiantes. Contiene más de 1.200 tareas con verificación instantánea y un conjunto esencial de teoría sobre los fundamentos de Java. Para ayudarte a tener éxito en la formación, hemos implementado una serie de funciones motivacionales: cuestionarios, proyectos de programación, contenido sobre aprendizaje eficiente y contenidos sobre la carrera profesional de un desarrollador Java.
Síguenos
Idioma de la interfaz
English Deutsch
Español
हिन्दी Français Português Polski বাংলা 简体中文 मराठी தமிழ் Italiano Bahasa Indonesia 繁體中文 Nederlands 日本語 한국어 Bulgarian Danish Hungarian Basa Jawa Malay Norwegian Romanian Swedish Telugu Thai Українська Filipino Turkish Azərbaycan Русский Vietnamese
"Los programadores se hacen, no nacen" © 2026 CodeGym
MastercardVisa
"Los programadores se hacen, no nacen" © 2026 CodeGym