Clases Abstractas e Interfaces
Clases Abstractas e Interfaces
Interfaces
Magister Víctor Andrade Soto
Clases abstractas
En Java se dice que son clases abstractas aquellas clases base
(superclases) de las que no se permite la creación de objetos. Para ello,
se utiliza la palabra clave abstract.
Métodos abstractos
En una clase abstracta es posible definir métodos abstractos, los cuales
se caracterizan por el hecho de que no pueden ser implementados en
la clase base. De ellos, solo se escribe su signatura en la superclase, y
su funcionalidad –polimórfica– tiene que indicarse en las clases
derivadas (subclases).
Ejemplo: La clase abstracta
Clase Círculo
Clase Cuadrado
Clase Triangulo
Clase Principal
Ejercicio:
Escriba un método calcularArea en la clase Padre Abstracta;
Recuerde que se implementa en las subclases.
Interfaces
Un interfaz es una lista de acciones que puede llevar a cabo un determinado
objeto. Pregunta, ¿eso no eran los métodos que se definen en una clase?
Casi, en una clase además de aparecer los métodos aparecía el código para
dichos métodos, en cambio en un interfaz sólo existe el prototipo de una
función, no su código.
..
prototipo método2;
}
Donde modif.visibilidad puede ser public o bien sin especificar, es decir
visibilidad pública (desde cualquier clase se puede emplear el interfaz) o de
paquete (sólo se puede emplear desde clases del mismo paquete).
nombreInterfaz por convenio sigue las mismas reglas de nomenclatura que
las clases, y en muchos casos acaba en able (que podíamos traducir como:
ser capaz de).
La claúsula opcional extends se emplea para conseguir que un interfaz
hereda las funciones de otro/s interfaces, simplemente listaInterfaces es una
lista separada por coma de interfaces de los que se desea heredar.
En muchas ocasiones un interfaz es empleado para definir un
comportamiento, que posteriormente será implementado por diversas
clases, que podrían no tener nada que ver entre ellas, pero que todas se
comportarán igual de cara al interfaz. Es decir, todas tendrán las funciones
indicadas por el interfaz.
Cuando varios objetos de distintas clases pueden responder al mismo
mensaje (función), aún realizando cosas distintas se denomina polimorfismo.
Interface Cantante
Clase Persona
Clase Pajarito
Clase Principal
Ejercicio
Añada las clases Grillo y sirena.
Desarrolle una interface visual con un ListBox que muestre el nombre
de las 4 clases y cuando haga click en 1 de ellas implemente el canto de
la misma (invente el sonido del grillo y la sirena) en un TextBox
Tarea
• Suba los dos ejercicios realizados en la clase como tarea de la semana
en un archivo rar.