Clase abstracta y relaciones poo

Solo disponible en BuenasTareas
  • Páginas : 3 (560 palabras )
  • Descarga(s) : 0
  • Publicado : 16 de octubre de 2010
Leer documento completo
Vista previa del texto
PROGRAMACIÓN DE APLICACIONES
JUAN ANTONIO TORRES NAVA
INVESTIGACIÓN

Clases abstractas
Una clase abstracta es una clase que tiene al menos un método abstracto. Una clase que extiende a una claseabstracta debe implementar los métodos abstractos (escribir el código) o bien volverlos a declarar como abstractos, con lo que ella misma se convierte también en clase abstracta. Un método abstractoes un método declarado en una clase para el cual esa clase no proporciona la implementación (el código).

La clase abstracta se declara simplemente con el modificador abstract en su declaración.Los métodos abstractos se declaran también con el mismo modificador, declarando el método pero sin implementarlo (sin el bloque de código encerrado entre {}). La clase derivada se declara e implementade forma normal, como cualquier otra. Sin embargo si no declara e implementa los métodos abstractos de la clase base (en el ejemplo el método dibujar) el compilador genera un error indicando que no sehan implementado todos los métodos abstractos y que, o bien, se implementan, o bien se declara la clase abstracta.

Sin embargo una clase abstracta no se puede instanciar, es decir, no se puedencrear objetos de una clase abstracta. El compilador producirá un error si se intenta:

Interfaces
El concepto de Interface lleva un paso más adelante la idea de las clases abstractas. En Java unainterface es una clase abstracta pura, es dcir una clase donde todos los métodos son abstractos (no se implementa ninguno). Permite al diseñador de clases establecer la forma de una clase (nombres demétodos, listas de argumentos y tipos de retorno, pero no bloques de código). Una interface puede también contener datos miembro, pero estos son siempre static y final. Una interface sirve para establecerun 'protocolo' entre clases.

Para crear una interface, se utiliza la palabra clave interface en lugar de class. La interface puede definirse public o sin modificador de acceso, y tiene el...
tracking img