Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial programming >> Java

Herencia en Java explicada: Tipos, sintaxis y ejemplos prácticos

¿Qué es la herencia?

La herencia es un concepto fundamental de programación orientada a objetos que permite a una clase adquirir los campos y métodos de otra. Piensa en ello como un hijo que hereda rasgos de sus padres. Al reutilizar código existente, la herencia impulsa la reutilización y simplifica el mantenimiento.

Esta guía cubre:

Tipos de herencia

Java soporta varios patrones de herencia, cada uno adecuado a diferentes necesidades de diseño.

Herencia simple

Una clase extiende a otra, formando una relación padre-hijo simple.

Herencia en Java explicada: Tipos, sintaxis y ejemplos prácticos
La clase B extiende a la clase A.

Herencia múltiple

Aunque Java no permite que una clase extienda múltiples clases, entender el concepto ayuda al usar interfaces.

Herencia en Java explicada: Tipos, sintaxis y ejemplos prácticos
La clase C extiende tanto a la clase A como a la B (conceptual).

Herencia multinivel

Las cadenas de herencia pueden abarcar varios niveles: una subclase puede ser a su vez superclase para otra clase.

Herencia en Java explicada: Tipos, sintaxis y ejemplos prácticos
La clase C extiende a B, que extiende a A.

Herencia jerárquica

Una superclase puede dar lugar a múltiples subclases.

Herencia en Java explicada: Tipos, sintaxis y ejemplos prácticos
Las clases B, C y D extienden a la clase A.

Herencia híbrida

La herencia híbrida combina patrones de herencia simple y múltiple. Aunque Java no la soporta directamente, el concepto es útil al diseñar jerarquías complejas usando interfaces.

Herencia en Java explicada: Tipos, sintaxis y ejemplos prácticos
La clase D hereda de la clase B y C, que ambas extienden a la clase A.

Nota: Java no soporta herencia híbrida ni múltiple para clases.

Herencia en Java

En Java, una relación Es-Un se expresa mediante herencia. La palabra clave extends indica que una subclase hereda de una superclase.

Sintaxis típica:

class SubClase extends SuperClase {
    // métodos y campos
}

Ejemplo de herencia en Java

A continuación se muestra una ilustración concisa de la herencia en acción.

Herencia en Java explicada: Tipos, sintaxis y ejemplos prácticos
Ejemplo de herencia en Java
class Doctor {
    void doctorDetails() {
        System.out.println("Detalles del Doctor...");
    }
}
class Cirujano extends Doctor {
    void cirujanoDetails() {
        System.out.println("Detalles del Cirujano...");
    }
}
public class Hospital {
    public static void main(String[] args) {
        Cirujano s = new Cirujano();
        s.doctorDetails();
        s.cirujanoDetails();
    }
}

Uso de la palabra clave super

La palabra clave super proporciona acceso a miembros de la superclase, análoga a this pero para elementos de la clase padre.

Puede usarse con variables, métodos y constructores.

Ejemplo de sintaxis:

super.nombreMetodo();

Herencia en acción: Un escenario bancario

Considera una aplicación bancaria que soporta múltiples tipos de cuenta. En un enfoque estructurado, escribirías funciones separadas para acciones comunes como depositar y retirar.

Herencia en Java explicada: Tipos, sintaxis y ejemplos prácticos

Usando POO, defines una clase base Cuenta con comportamiento compartido, y la extiendes para tipos de cuenta específicos.

Herencia en Java explicada: Tipos, sintaxis y ejemplos prácticos
Enfoque estructurado: funciones separadas para depositar y retirar.
Herencia en Java explicada: Tipos, sintaxis y ejemplos prácticos
Enfoque POO: subclases reducen duplicación.

Añadiendo facilidad de descubierto

Cuando el requisito cambia para añadir una característica de descubierto, el código estructurado necesita alterarse. En cambio, POO permite crear una nueva subclase que implemente la lógica única de retirar sin tocar el código base probado.

Herencia en Java explicada: Tipos, sintaxis y ejemplos prácticos
Herencia en Java explicada: Tipos, sintaxis y ejemplos prácticos
Enfoque estructurado: modificar función retirar existente.
Herencia en Java explicada: Tipos, sintaxis y ejemplos prácticos
Enfoque POO: añadir nueva subclase para cuenta con descubierto.

Añadiendo una cuenta de tarjeta de crédito

De forma similar, introducir una cuenta de tarjeta de crédito con reglas de depósito únicas es sencillo en POO: simplemente extiende la clase base con comportamiento especializado.

Herencia en Java explicada: Tipos, sintaxis y ejemplos prácticos
Herencia en Java explicada: Tipos, sintaxis y ejemplos prácticos
Enfoque estructurado: ajustar lógica de depósito existente.
Herencia en Java explicada: Tipos, sintaxis y ejemplos prácticos
Enfoque POO: crear nueva subclase con lógica de depósito personalizada.

Beneficios de la herencia en POO

La herencia elimina la duplicación de código colocando la lógica compartida en una clase padre. Las clases hijas heredan los métodos depositar y retirar, reduciendo la sobrecarga de mantenimiento.

Herencia en Java explicada: Tipos, sintaxis y ejemplos prácticos
Herencia en Java explicada: Tipos, sintaxis y ejemplos prácticos

Java

  1. Entendiendo Interfaces en C#: Definición, Ejemplo y Uso Práctico
  2. Dominando la herencia en Java: Conceptos, tipos y ejemplos prácticos
  3. Conceptos de POO en Java: Fundamentos, ejemplos y ventajas
  4. Dominando la abstracción en POO: Clases y métodos abstractos en Java explicados
  5. Encapsulamiento en Java: Guía completa con ejemplo práctico
  6. Método Java String length(): Cómo obtener el tamaño de un String (Ejemplo)
  7. Entendiendo Java String.charAt(): Sintaxis, tipo de retorno, excepciones y ejemplo práctico
  8. Método Java String.contains(): Cómo comprobar subcadenas – Ejemplos prácticos
  9. Dominando Java String.endsWith(): Cómo comprobar sufijos de cadena con ejemplos
  10. Lectura de archivos en Java con BufferedReader – Guía práctica con ejemplos
  11. Algoritmo Insertion Sort en Java: Ejemplo Claro y Guía Paso a Paso