Está en la página 1de 3

Ciclo 2

Semana 3
Herencia, Abstracción y Polimorfismo

Lectura 6 - Sobrecarga y Sobrescritura


Sobrecarga y Sobrescritura

1. Sobrecarga

En la programación orientada a objetos se puede representar el término de sobrecarga


como las diferentes formas para realizar una misma acción, y lo vemos en diferentes
contextos como:

• La Sobrecarga de métodos se da cuando se define un método en una clase y este


tiene el mismo nombre que otro de la misma clase, pero con diferente número o
tipo de argumentos, aunque en esta no interviene el tipo de retorno, en otras
palabras, es la creación de varios métodos con el mismo nombre, pero con
diferente lista de tipos de parámetros, y el compilador diferenciará los métodos
sobrecargados según el número y tipo de argumentos o parámetros que tiene el
método mas no por el tipo de retorno para definir que método ejecutar.

• La sobrecarga de operadores permite desarrollar código con especialización de la


sobrecarga de funciones, posibilitando la redefinición de las operaciones que
realiza el usuario (+, -, *, >, etc.) igual que en la sobrecarga de funciones, pero con
operadores.

• La Sobrecarga de Funciones corresponde a que un mismo mensaje se envía a


objetos de diferentes clases y cada objeto responderá al mensaje
apropiadamente.

• La Sobrecarga de constructores, define en una clase varios constructores con


diferente número de parámetros, por ejemplo, cuando existe la necesidad de
inicializar un objeto de diferentes maneras permitiendo construir objetos de
distintas maneras.

Sobrecarga y Sobrescritura [1] Semana 3


2. Sobreescritura

Al igual que en la sobrecarga nos centramos en los parámetros, en la sobreescritura lo


hacemos en la estructura del método para sea igual a la de su superclase, con su mismo
nombre, número de argumentos y tipo de retorno o un subtipo de este.
Pensemos en que un método tiene un objetivo conformado por el código que lo
representa en su interior. En el momento que una clase tiene descendientes con métodos
visibles para estos descendientes, puede en algún momento tener sobreescritura, que se
da en los descendientes, donde, aunque los padres tienen unas habilidades y no todos
son pasados a sus hijos haciendo que los hijos cambien su comportamiento y los
diferencie de sus padres. En otras palabras, la sobreescritura consiste en esa capacidad
que tienen esos descendientes de cambiar el comportamiento heredado de sus padres,
mediante la modificación del código que conforma su comportamiento.
Esta sobreescritura de métodos por tanto se da cuando existe herencia, o sea cuando
definimos un método con la misma estructura (tipo de retorno, nombre y parámetros)
que otro que se hereda.
Una subclase o clase hija hereda todos los métodos de su clase padre que son accesibles
a dicha subclase excepto si la subclase sobreescribe los en relación a que define un
método con las mismas características (nombre, número y tipo de argumentos) que el
método de la superclase. Las subclases usan la sobreescritura de métodos para agregar
o modificar la funcionalidad del método heredado de la clase padre.

Sobrecarga y Sobrescritura [2] Semana 3

También podría gustarte