Existen muchas diferencias entre la sobrecarga de métodos y la anulación de métodos en Java. A continuación se proporciona una lista de diferencias entre la sobrecarga de métodos y la anulación de métodos:
No. | Sobrecarga de métodos | Anulación de métodos |
---|---|---|
1) | Se utiliza la sobrecarga de métodos. para aumentar la legibilidad Del programa. | Se utiliza la anulación de métodos para proporcionar la implementación específica del método que ya proporciona su superclase. |
2) | Se realiza la sobrecarga del método. dentro de clase . | Ocurre anulación de método en dos clases que tienen relación IS-A (herencia). |
3) | En caso de sobrecarga del método, El parámetro debe ser diferente. . | En caso de anulación del método, El parámetro debe ser el mismo. . |
4) | La sobrecarga de métodos es el ejemplo de polimorfismo en tiempo de compilación . | La anulación de métodos es el ejemplo de polimorfismo en tiempo de ejecución . |
5) | En Java, la sobrecarga de métodos no se puede realizar cambiando únicamente el tipo de retorno del método. El tipo de devolución puede ser igual o diferente en la sobrecarga de métodos. Pero debes tener que cambiar el parámetro. | El tipo de retorno debe ser igual o covariante en anulación de métodos. |
Ejemplo de sobrecarga de métodos Java
class OverloadingExample{ static int add(int a,int b){return a+b;} static int add(int a,int b,int c){return a+b+c;} }
Ejemplo de anulación de método Java
class Animal{ void eat(){System.out.println('eating...');} } class Dog extends Animal{ void eat(){System.out.println('eating bread...');} }