MARISOL ZAMORA ROSAS (10500426)
CLASES ABSTRACTAS
Los métodos abstractos son los que están declarados en una clase, pero no se ha definido en la clase el código de esos métodos.
Las clases abstractas presentan un nivel de "abstracción" tan elevado que no sirven para instanciar objetos de ellas.Re presentan los escalones más elevados de algunas jerarqías de clases y solo sirven para derivr otras clases,en las que se van implementado detalles y concreencias, hasta que finalmente presentan un nivel de definicónes suficientes que permite instanciar objetos concretos.Se suelen utilizar en aquellos casos en que se quiere que unaseria de clases mantengan una cierta caracteristica o interfaz común. Por esta razón a veces se dice que ellas que son pura interfaz.
Una clase abstracta es la que tiene al menos una función virtual pura.
Nota: Recordemos que las clases que tienen al menos una función virtual se denominan clases polimórficas.Resulta por lo tanto, que todas las clases abstractas son también polimórficas,pero no necesariamente a la inversa.
REGLAS DE USO:
- Una clase abstrata solo puede ser usada como clase base para otras clases, pero no pueden ser instanciada para crear un objeto.
- Una clase abstracta no puede ser utilizada como argumento o como retorno de una función.
- Si puede declararse punteros-a-clase abstracta
EJEMPLO
Cuando pensamosen una clase como un tipo,asumimos que los programas crearán objetos de ese tipo. Sin embargo, hay asos en que es útil definir clases para las cuales no se desea iniciar objetos. Tales clases son llamadas clases abstractas.
El propósito de una clase abstracta es proveer una clase abstracta es proceer una clase base apropiada desde la cual otras clases hereden. Las clases desde las cuales se pueden instanciar objetos se llaman clases concretas. Tales clases proveen implementaciones de cada método o propiedad que definen.
Las clases abstractas normalmente contienen uno o más métodos o propiedades abstractas, las cuales no proveen implementación. Las clases derivadas deben reemplazar los métodos abstractos heredados para permitir la instanciación de objetos.
ESTA IMAGEN MUESTRA UN EJEMPLO DE LO QUE ES UNA CLASE ABSTRACTA
FUENTES DE INVESTIGACIÓN
http://www.zator.com/Cpp/E4_11_8c.htm
http://www.sistemas.itlp.edu.mx/tutoriales/progorientobjetos/t62.htm
http://elvex.ugr.es/decsai/java/pdf/AC-interfaces.pdf
No hay comentarios:
Publicar un comentario