Sobrecarga y anulación

Anonim

Sobrecarga vs Anulación

La sobrecarga y la anulación son las características de la mayoría de los lenguajes de programación. La sobrecarga es una característica que permite la creación de varios métodos con el mismo nombre, en la misma clase, pero que difieren entre sí en términos del tipo de entrada y el tipo de salida de la función. La sobrecarga de métodos generalmente se asocia con lenguajes de programación estáticos que imponen la verificación de tipos en las llamadas a funciones. Lo más probable es que estén relacionados con VB,.Net, C ++, D, Java, etc. La anulación es una habilidad primaria utilizada para la programación orientada a objetos y se realiza cuando un usuario redefine un método que ya se ha definido en una clase existente o principal. En esta técnica de programación, los scripts están codificados para llevar a cabo tareas específicas al permitir que un script escrito en una clase inferior o subclase implemente un método o conjunto de instrucciones que ya se ha establecido en cualquiera de las clases principales o superiores.

En la programación de computadoras, la sobrecarga se originó a partir de un método que tiene más de una definición en el mismo ámbito y comparte el mismo nombre pero con la firma diferente. Las implementaciones del método comparten el mismo nombre porque realizarán tareas similares. La sobrecarga también se identifica debido a su reconocimiento como un caso de polimorfismo, en el que algunos o todos los operadores pueden tener diferentes implementaciones que dependen de sus tipos de argumentos especificados. La anulación depende de la presencia de una función de clase base para su apariencia. La función de anulación del lenguaje que permite que una clase secundaria implemente un método que ya está siendo utilizado por una de sus clases superclase o padre, permite que el método de subclase asigne el mismo nombre, lista de parámetros y tipo de retorno o firma que el método invalidado que usa la superclase tiene.

Se considera que la sobrecarga es práctica porque permite a los programadores escribir varios métodos diferentes que tienen el mismo nombre. La sobrecarga puede tener algunas consecuencias para un idioma porque en tiempo de ejecución el procesador cambia el nombre de todos los métodos sobrecargados. Se resuelve en tiempo de compilación. Mientras que la anulación es un polimorfismo que está diseñado sobre la base del primer parámetro implícito que se resuelve en tiempo de ejecución.

Resumen: El término sobrecarga generalmente se asocia con lenguajes programados estáticamente y prevalece la popularidad obtenida en la programación orientada a objetos. Un método en una clase que tiene el mismo nombre de método con una firma diferente se designa como un método de sobrecarga. Anulación conocida como un método en una clase que tiene el mismo nombre de método y los mismos argumentos / firma. La sobrecarga comparte una relación uniforme entre los métodos disponibles en la misma clase, mientras que al reemplazar, se crea una relación entre un método de superclase y un método de subclase. La sobrecarga permite la herencia de la superclase. Al reemplazar, el método de subclase toma el lugar de la superclase. La sobrecarga debe tener una firma de método diferente, mientras que la anulación debe asignar la misma firma.