Sobrecarga, Polimorfismo e Interfaces

15/05/2010 - 08:17 por CG | Informe spam
Visual C# 2008

Hola a todos

1º ¿Es lo mismo Sobrecarga de Métodos y Polimorfismo?

2º No me queda claro ¿Por qué es necesario crear Interfaces para métodos con
el mismo nombre y que se han de implementar en diferentes clases en forma
distinta?¿No sería "igual" que sobreescribir dichos métodos en las diferentes
clases que los vayan a utilizar?

Desde ya Muchísimas Gracias

Carlos García
 

Leer las respuestas

#1 Alberto Poblacion
15/05/2010 - 08:46 | Informe spam
"CG" wrote in message
news:
1º ¿Es lo mismo Sobrecarga de Métodos y Polimorfismo?



No. La sobrecarga se refiere a crear varios métodos con el mismo nombre
y distintos argumentos. El polimorfismo, en cambio, aparece cuando tenemos
varias copias del mismo método con los mismos argumentos (en distintas
clases hijas de una clase dada).

2º No me queda claro ¿Por qué es necesario crear Interfaces para métodos
con
el mismo nombre y que se han de implementar en diferentes clases en forma
distinta?¿No sería "igual" que sobreescribir dichos métodos en las
diferentes
clases que los vayan a utilizar?



Sí, sobreescribir los métodos en las clases hijas de una dada, visto
desde el exterior de las clases, tiene el mismo efecto que implementar los
métodos de una interfaz heredada (implementada) por la clase. La cuestión
que se plantea, entonces, al crear nuestra jerarquía de clases, es si
debemos crear una clase base y heredar de ella, o definir una interfaz e
implementarla en otras clases. A veces venimos forzados a utilizar una
interfaz, puesto que en .Net no tenemos herencia múltiple. Pero cuando se
puede elegir, el criterio consiste en utilizar una clase base cuando ésta
puede contener funcionalidad común a todas las hijas que solo se
sobreescribe en casos puntuales. En cambio se usa una interfaz cuando la
implementación es siempre distinta y no es posible encontrar una
funcionalidad común a las clases hijas que resulte pertinente ubicar en la
clase base.

Preguntas similares