mas sobre herencia

Anuncio
Más sobre herencia y polimorfismo
Por: Yolanda Martínez Treviño
¿Cuándo una clase debe ser concreta?
 
Al trabajar con herencia la clase padre puede o no ser
abstracta
 
Si se pueden definir objetos de la clase padre y también de la
clase hijo entonces la clase padre debe ser concreta.
 
Ejemplo:
 
Clase Triángulo (clase Base)
Clase Rectángulo (clase Derivada)
Clase Isóceles (clase Derivada)
 
 
Redefinición de Métodos cuando la clase
padre es concreta
 
¿Qué pasa si en la subclase necesito que un método
que estoy heredando se comporte de manera
diferente de como funciona en la clase base?
 
Se puede redefinir un método:
 
 
En la clase base agrega la palabra virtual al encabezado del
método.
En la subclase agrega la palabra override al encabezado del
método.
¿Cuando una clase debe ser abstracta?
 
Si no tiene sentido definir objetos de la clase padre y además
hay métodos abstractos en la clase padre entonces la clase
padre debe ser abstracta.
 
Ejemplos:
 
Clase Figura(clase Base)
Clase Rectángulo (clase Derivada)
Clase Triángulo(clase Derivada)
 
 
 
 
 
Clase Animal (clase Base)
Clase Perro (clase Derivada)
Clase Gato (clase Derivada)
Redefinición de Métodos cuando la clase
padre es abstracta
 
Si la clase padre es abstracta, debe contener métodos
abstractos, que no están definidos (se coloca
solamente el encabezado seguido de ; ).
 
Las clases derivadas están obligadas a redefinir los
métodos abstractos de su clase base.
 
Se utiliza la palabra override en el encabezado del
método que se está redefiniendo.
Descargar