Erstellt von DANIEL GARCIA ROMERO
vor mehr als 8 Jahre
|
||
Frage | Antworten |
El polimorfismo indica que una variable pasada o esperada puede adoptar múltiples formas. Cuando se habla de polimorfismo en programación orientada a objetos se suelen entender dos cosas: | |
1. La primera se refiere a que se puede trabajar con un objeto de una clase sin importar de qué clase se trata. Es decir, se trabajará igual sea cual sea la clase a la que pertenece el objeto. | 2. La segunda suele referirse a la posibilidad de declarar métodos con el mismo nombre que pueden tener diferentes argumentos dentro de una misma clase. |
Este comportamiento puede ser el deseado en ciertos casos, pero otras veces tal vez se desee que el comportamiento de la clase desaparezca por completo. | |
Los únicos métodos que no pueden ser declarados como virtuales son los constructores, los métodos estáticos, y los operadores new y delete. | Clase virtual pura Hay veces en las que no va a ser necesario crear objetos de la clase base, o simplemente no se desea que quien utilice la clase pueda crear objetos de la clase base. Para ello existen lo que suele llamarse en POO clases abstractas. |
En C++ el concepto de clases abstractas se implementa mediante funciones virtuales puras. Estas funciones se declaran igual que cualquier otra función anteponiendo la palabra virtual y añadiendo al final de la declaración =0. Para estas funciones no se proporciona implementación. | Dada una clase abstracta, no se pueden crear objetos de esa clase base. Se pueden crear punteros que a objetos de la clase base abstracta que realmente apunten a objetos de la clase derivada. |
Möchten Sie mit GoConqr kostenlos Ihre eigenen Karteikarten erstellen? Mehr erfahren.