poesia

Páginas: 27 (6729 palabras) Publicado: 17 de mayo de 2013
TEMA 4. CLASES ABSTRACTAS E INTERFACES .............................................. 1
4.1 DEFINICIÓN DE MÉTODOS ABSTRACTOS EN POO. ALGUNOS EJEMPLOS DE
USO........................................................................................................ 3
4.1.1 MÉTODOS ABSTRACTOS: DEFINICIÓN Y NOTACIÓN UML...................... 3
4.1.2 CLASES ABSTRACTAS: DEFINICIÓN Y VENTAJAS DEUSO...................... 5
4.1.3 AUMENTANDO LA REUTILIZACIÓN DE CÓDIGO GRACIAS A LOS
MÉTODOS ABSTRACTOS .......................................................................... 7
4.2 RELACIÓN ENTRE POLIMORFISMO Y MÉTODOS ABSTRACTOS................ 11
4.2.1 NECESIDAD DEL POLIMORFISMO PARA EL USO DE MÉTODOS
ABSTRACTOS........................................................................................ 11
4.2.2 SINTAXIS DE MÉTODOS Y CLASES ABSTRACTAS EN C++................... 12
4.2.3 SINTAXIS DE MÉTODOS Y CLASES ABSTRACTAS EN JAVA .................. 21
4.3 DEFINICIÓN Y VENTAJAS DE USO DE CLASES COMPLETAMENTE
ABSTRACTAS O INTERFACES.................................................................. 28
4.3.1 INTRODUCCIÓN A INTERFACES (EN JAVA) Y CLASES COMPLETAMENTE
ABSTRACTAS (ENC++) ......................................................................... 28
4.3.2 SINTAXIS DE INTERFACES EN JAVA; UN EJEMPLO DESARROLLADO ..... 33
4.3.3 SINTAXIS DE CLASES COMPLETAMENTE ABSTRACTAS EN C++: UN
EJEMPLO DESARROLLADO...................................................................... 46
4.4 REPRESENTACIÓN EN UML DE MÉTODOS ABSTRACTOS, CLASES
ABSTRACTAS E INTERFACES.................................................................. 56
4.5 IMPLEMENTACIÓN EN C++ DE MÉTODOS ABSTRACTOS Y CLASES
ABSTRACTAS......................................................................................... 57
4.6 IMPLEMENTACIÓN EN JAVA DE MÉTODOS ABSTRACTOS E INTERFACES . 58

1

TEMA 4. CLASES ABSTRACTAS E INTERFACES
Introducción:
La posibilidad de definir relaciones deherencia entre clases, dando lugar a
relaciones de subtipado entre las mismas, nos ha permitido en el Tema 3
definir el polimorfismo de métodos (es decir, que un mismo método tuviese
distintas definiciones, y además los objetos fuesen capaces de acceder a la
definición del método adecuada en tiempo de ejecución).
Estas mismas relaciones de subtipado entre clases daban lugar a una segundasituación menos deseable. Siempre que declaramos un objeto como
perteneciente a un tipo (por ejemplo, al declarar una estructura genérica o al
definir funciones auxiliares), restringimos la lista de métodos (o la interfaz) que
podemos utilizar de dicho objeto a los propios de la clase declarada.
En este caso estábamos perdiendo información (en la forma de métodos a los
que poder acceder) que podríansernos de utilidad. Una posible solución a este
problema la ofrecen los métodos abstractos. Un método abstracto nos da la
posibilidad de introducir la declaración de un método (y no su definición) en una
clase, e implementar dicho método en alguna de las subclases de la clase en
que nos encontramos.
De este modo, la declaración del método estará disponible en la clase, y lo
podremos utilizarpara, por ejemplo, definir otros métodos, y además no nos
vemos en la obligación de definirlo, ya que su comportamiento puede que sea
todavía desconocido.
Una consecuencia de definir un método abstracto es que la clase
correspondiente ha de ser también abstracta, o, lo que es lo mismo, no se
podrán crear objetos de la misma (¿cómo sería el comportamiento de los
objetos de la misma alinvocar a los métodos abstractos?), pero su utilidad se
observará al construir objetos de las clases derivadas. Además, la posibilidad
de declarar métodos abstractos enriquecerá las jerarquías de clases, ya que
más clases podrán compartir la declaración de un método (aunque no
compartan su definición).
La idea de un método abstracto puede ser fácilmente generalizada a clases
que sólo contengan...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Poesia
  • Poesia
  • Poesia
  • Poesia
  • Poesia
  • Poesia
  • Poesía
  • Poesias

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS