Herencia simple versus herencia múltiple
Contenido
- Contenido: diferencia entre herencia única y herencia múltiple
- Cuadro comparativo
- Herencia única
- Herencia múltiple
- Diferencias clave
- Conclusión
- Video explicativo
La diferencia clave entre herencia simple y herencias múltiples es que en herencia simple, la clase derivada hereda solo una clase base única, mientras que, en herencias múltiples, la clase derivada hereda más de una clase base.
La herencia es uno de los conceptos más importantes en OOP que es la programación orientada a objetos. El concepto de reutilización se admite en la herencia. Reusabilidad significa que la nueva clase reutiliza las propiedades de la clase ya existente. En la clase derivada de herencia hereda la clase base y el acceso, el especificador decide qué miembro de la clase base se heredará. Hay tipos de herencia que son una herencia única, herencia jerárquica, herencia multinivel y herencia híbrida. En herencia única, la clase derivada hereda solo una clase base única mientras que, en herencias múltiples, la clase derivada hereda más de una clase base.
Hay una sola clase derivada que se hereda de la clase base. Hay tres formas de heredar la clase base que es pública, protegida y privada. El especificador de acceso se usa para heredar la clase base. La razón de la herencia única es heredar las propiedades y el comportamiento de una sola clase principal. El objetivo principal de la programación orientada a objetos que es la reutilización del código se cumple mediante el uso de una herencia única. Si hablamos de herencia única en comparación con la herencia múltiple, la herencia única es más fácil en comparación con la herencia múltiple. La anulación de funciones se usa en herencia única. El polimorfismo en tiempo de ejecución se conoce como anulación. La anulación se logra mediante el uso de una palabra clave de función que es virtual. Esta palabra clave se usa en la clase base. Cuando la clase derivada redefine una función, la función anulada no se puede cambiar. La anulación en C ++ determina qué versión de la función se llama. La herencia única se usa en C ++, Java, PHP, C # y la base visual.
La herencia múltiple permite derivar más de una clase base, lo que significa que puede obtener las propiedades de más de una clase base. Podemos tener una clase derivada y múltiples clases base. La clase base se hereda al mencionar el especificador de acceso separado. La herencia múltiple tiene fusión simétrica y extensión asimétrica. Cuando hay un patrón de adaptador, se usa la herencia múltiple. La herencia múltiple se usa en C ++, Python, Perl, Eiffel, Dylan, Curl, Eulisp, Tcl. La implementación de código para herencias múltiples es compleja en comparación con la herencia única.
Contenido: diferencia entre herencia única y herencia múltiple
- Cuadro comparativo
- Herencia única
- Herencia múltiple
- Diferencias clave
- Conclusión
- Video explicativo
Cuadro comparativo
Base | Herencia única | Herencia múltiple |
Sentido | En herencia única, la clase derivada hereda solo una clase base única | En herencias múltiples, la clase derivada hereda más de una clase base.
|
Seguro | La herencia única es más segura que las herencias múltiples. | Las herencias múltiples no son seguras de implementar |
Acceso | En herencia única, las características de una sola clase se heredan | En la herencia múltiple, las características de varias clases se pueden heredar |
Tiempo de ejecución | La herencia única requiere más tiempo de ejecución | La herencia múltiple requiere menos tiempo de ejecución |
Herencia única
Hay una sola clase derivada que se hereda de la clase base. Hay tres formas de heredar la clase base que es pública, protegida y privada. El especificador de acceso se usa para heredar la clase base. La razón de la herencia única es heredar las propiedades y el comportamiento de una sola clase principal. El objetivo principal de la programación orientada a objetos que es la reutilización del código se cumple mediante el uso de una herencia única. Si hablamos de herencia única en comparación con las herencias múltiples, la herencia única es más fácil en comparación con las herencias múltiples. La anulación de funciones se usa en herencia única. El polimorfismo en tiempo de ejecución se conoce como anulación. La anulación se logra mediante el uso de una palabra clave de función que es virtual. Esta palabra clave se usa en la clase base. Cuando la clase derivada redefine una función, la función anulada no se puede cambiar. La anulación en C ++ determina qué versión de la función se llama. La herencia única se usa en C ++, Java, PHP, C # y la base visual.
Herencia múltiple
Las herencias múltiples permiten derivar más de una clase base, lo que significa que puede obtener las propiedades de más de una clase base. Podemos tener una clase derivada y múltiples clases base. La clase base se hereda al mencionar el especificador de acceso separado. Las herencias múltiples tienen fusión simétrica y extensión asimétrica. Cuando hay un patrón de adaptador, se utilizan múltiples herencias. Se utilizan múltiples herencias en C ++, Python, Perl, Eiffel, Dylan, Curl, Eulisp, Tcl. La implementación de código para herencias múltiples es compleja en comparación con la herencia única.
Diferencias clave
- En herencia única, la clase derivada hereda solo una clase base única mientras que, en herencias múltiples, la clase derivada hereda más de una clase base.
- La herencia única es más segura que las herencias múltiples, mientras que las herencias múltiples no son seguras de implementar.
- En la herencia única, las características de una sola clase se heredan, mientras que en la herencia múltiple se pueden heredar las características de varias clases.
- La herencia única requiere más tiempo de ejecución, mientras que las herencias múltiples requieren menos tiempo de ejecución
Conclusión
En este artículo anterior, vemos la clara diferencia entre herencia simple y herencias múltiples con la implementación