sobrecarga sencillos que programacion poo polimorfismo parametrico herencia encapsulamiento ejemplos oop polymorphism method-overloading method-overriding

oop - sencillos - ¿Están los conceptos similares al polimorfismo, la sobrecarga y la anulación?



que es herencia en programacion (2)

En breve, no, no son lo mismo.

Sobrecargar significa crear métodos con el mismo nombre pero diferentes parámetros.

Reemplazar significa redefinir el cuerpo de un método de superclase en una subclase para cambiar el comportamiento de un método.

El polimorfismo es un concepto amplio que incluye anulación y sobrecarga y mucho más en su alcance. La descripción de Wikipedia del polimorfismo puede ayudarlo a comprender mejor el polimorfismo. Especialmente la sección de polimorfismo de subtipo (o polimorfismo de inclusión) es donde debes mirar.

Estoy muy confundido acerca de los conceptos de polimorfismo, sobrecarga y anulación porque me parece igual. Por favor explica estos conceptos, y como son diferentes el uno del otro

Muy confundido así que por favor guíame apropiadamente.

Gracias


Polymorphism se puede lograr anulando. Dicho brevemente, el polimorfismo se refiere a la capacidad de un objeto para proporcionar diferentes comportamientos (usar diferentes implementaciones) dependiendo de su propia naturaleza. Específicamente, dependiendo de su posición en la jerarquía de clases.

Método La anulación es cuando un método definido en una superclase o interfaz se redefine por una de sus subclases, modificando / reemplazando así el comportamiento que proporciona la superclase. La decisión de llamar a una implementación u otra se toma dinámicamente en tiempo de ejecución, según el objeto al que se llama la operación. Observe que la firma del método permanece igual al anular.

Método La sobrecarga no está relacionada con el polimorfismo. Se refiere a la definición de diferentes formas de un método (generalmente al recibir diferentes tipos de parámetros). Se puede ver como polimorfismo estático. La decisión de llamar a una implementación u otra se toma en el momento de la codificación. Observe que en este caso la firma del método debe cambiar.

La sobrecarga del operador es un concepto diferente, relacionado con el polimorfismo, que se refiere a la capacidad de un determinado operador dependiente del lenguaje para comportarse de manera diferente según el tipo de sus operandos (por ejemplo, + podría significar concatenación con String y suma con operandos numéricos) .

El example en Wikipedia es bastante ilustrativo.

Las siguientes preguntas relacionadas también pueden ser útiles:

  • Polimorfismo vs Sobrecarga vs Sobrecarga
  • Polimorfismo: defina en solo dos oraciones