CodeGym
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
  • Concepto de herencia, sintaxis de extends

    JAVA 25 SELF
    Nivel 17,Lección 0
    En esta lección veremos qué es la herencia en Java, cómo ayuda a evitar la duplicación de código y cómo declarar jerarquías mediante la palabra clave extends. Veremos qué hereda exactamente una subclase, qué limitaciones existen (herencia simple, miembros privados, constructores), analizaremos un ejemplo práctico con animales, matices relacionados con los constructores y errores típicos.
    Disponible
  • Sobrescritura de métodos (override), anotación @Override

    JAVA 25 SELF
    Nivel 17,Lección 1
    En esta lección analizamos la sobrescritura de métodos en Java: cómo y por qué una subclase sustituye el comportamiento del padre, la utilidad de la anotación @Override, cómo funciona el polimorfismo cuando invocamos a través de una referencia de tipo base, así como las reglas clave (firma, modificadores de acceso, excepciones, covarianza) y las limitaciones ( static, final, private). Cerramos con práctica en un mini‑proyecto «Zoológico» y un repaso de errores típicos.
    Disponible
  • Uso de super: llamada al constructor y a los métodos de la clase base

    JAVA 25 SELF
    Nivel 17,Lección 2
    Desgranamos la palabra clave super en Java: cómo llamar a métodos y constructores de la clase base, cómo acceder a los campos ocultos del padre, cuándo y por qué ampliar el comportamiento mediante super y super(...), así como las limitaciones (no se puede usar en métodos estáticos, no hay acceso a private) y los errores típicos. Muchos ejemplos prácticos en la jerarquía Animal/ Cat/ Dog y Vehicle/ Car.
    Disponible
  • Creación de jerarquías de clases, ejemplos de la vida real

    JAVA 25 SELF
    Nivel 17,Lección 3
    Aprenderemos a diseñar e implementar jerarquías de clases en Java: cómo distinguir lo general de lo particular, construir el árbol de herencia, dónde es apropiada la relación is-a y cuándo es mejor usar composición ( has-a). Veremos ejemplos reales (animales, geometría, transporte, usuarios), matices de arquitectura y errores típicos de diseño.
    Disponible
  • Problemas y limitaciones de la herencia

    JAVA 25 SELF
    Nivel 17,Lección 4
    En esta lección analizamos los límites del modelo de herencia en Java: herencia simple de clases, ausencia de herencia de constructores y no disponibilidad de los private-miembros. Examinaremos jerarquías «frágiles» y el efecto de la herencia «que se rompe», mostraremos alternativas — composición ( has-a), delegación e interfaces, así como criterios sobre «cuándo realmente hace falta extends». Por el camino, mencionaremos la llamada al constructor de la clase base mediante super(...) y los errores típicos de diseño.
    Disponible
  • El concepto de polimorfismo y para qué sirve

    JAVA 25 SELF
    Nivel 18,Lección 0
    En la lección analizamos el polimorfismo en Java: qué es, en qué se diferencian overloading y overriding, cómo funciona el enlace tardío y por qué una interfaz puede tener múltiples implementaciones. Con ejemplos prácticos veremos cómo el polimorfismo simplifica la arquitectura, hace el código extensible y reduce el acoplamiento entre módulos.
    Disponible
  • Sobrecarga de métodos (overloading)

    JAVA 25 SELF
    Nivel 18,Lección 1
    Nos sumergimos en la sobrecarga de métodos en Java: cuándo tiene sentido declarar varias versiones del mismo método, cómo el compilador elige la mejor coincidencia por parámetros, por qué no se puede sobrecargar solo por el tipo de retorno y cómo funcionan los constructores sobrecargados y ... varargs. Veremos ejemplos con println, crearemos un pequeño Calculator y repasaremos los errores típicos relacionados con las conversiones automáticas y la ambigüedad entre Integer/ Long.
    Disponible
  • Sobrescritura de métodos (overriding): diferencia con la sobrecarga

    JAVA 25 SELF
    Nivel 18,Lección 2
    Analizamos en detalle la sobrescritura de métodos en Java: cómo el overriding garantiza el polimorfismo en tiempo de ejecución, en qué se diferencia de overloading, qué reglas aplican (signaturas, acceso, excepciones, covariancia), cómo usar @Override y cómo invocar la lógica del padre mediante super. Mostraremos ejemplos prácticos y revisaremos errores típicos.
    Disponible
  • Uso del polimorfismo en la práctica

    JAVA 25 SELF
    Nivel 18,Lección 3
    Mostramos el polimorfismo con ejemplos reales: cómo almacenar objetos heterogéneos en una única colección del tipo base y llamar a los métodos «correctos» sin if/ switch, cómo la incorporación de una nueva subclase no exige reescribir la lógica y qué limitaciones tiene el enfoque. Construiremos una jerarquía de empleados con el método work(), hablaremos de extensibilidad y analizaremos errores típicos.
    Disponible
  • Relación entre polimorfismo y clases abstractas

    JAVA 25 SELF
    Nivel 18,Lección 4
    Cómo las clases y los métodos abstractos forman un contrato común e incorporan el polimorfismo en Java: por qué no se puede crear un objeto abstracto, cómo las subclases implementan los métodos obligatorios, cómo trabajar a través del tipo base y aun así obtener el comportamiento «correcto». Veremos ejemplos con animales y una jerarquía de empleados, matices de sintaxis y errores típicos.
    Disponible
  • Abstracción en POO: por qué y cómo aplicarla

    JAVA 25 SELF
    Nivel 19,Lección 0
    Una introducción clara a la abstracción en POO con Java: qué es, para qué sirve y cómo aplicarla en el diseño. Veremos las herramientas del lenguaje —clases abstractas abstract class e interfaces interface—, los métodos abstractos y el trabajo a través de un contrato común (por ejemplo, llamadas como payment.process() o draw()). Con ejemplos prácticos ( Shape, Payment, Transport) mostraremos cómo ocultar detalles de implementación, reducir el acoplamiento y facilitar la ampliación del sistema.
    Disponible
  • Clases y métodos abstractos: sintaxis y ejemplos

    JAVA 25 SELF
    Nivel 19,Lección 1
    En esta lección analizamos paso a paso las clases y los métodos abstractos en Java: cuándo usar abstract, cómo declarar una class abstracta, en qué se diferencia de un interface, y cómo implementar los métodos obligatorios (por ejemplo, makeSound()) en las subclases. Acompañaremos la teoría con ejemplos claros ( Animal, Transport, Shape) y veremos errores típicos: desde intentar instanciar una clase abstracta hasta usar modificadores de forma incorrecta.
    Disponible
  • 1
  • ...
  • 8
  • 9
  • 10
  • 11
  • 12
  • ...
  • 30
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