Post on 19-Jun-2015
description
INTERFACES (JAVA)
•CLASES ABSTRACTAS
•INTEFACES
•POLIMORFISMO
CLASES ABSTRATAS Una clase abstracta (la clase abstracta no puede instanciar. No se puede crear objetos…. Agrupa
métodos.. características para que las siguientes clases puedan utilizar
METODOS ABSTRACTOS
INTERFACES
CARACTERISTICAS
colección de métodos abstractos y propiedades.
Se especifica qué se debe hacer pero no su implementación.
Serán las clases que implementen estas interfaces las que describan la lógica del comportamiento de los métodos.
Permite al diseñador de clases establecer la forma de una clase (nombres de métodos, listas de argumentos y tipos de retorno, pero no bloques de código)
Es posible crear referencias a interfaces, pero las interfaces no pueden ser instanciadas
DIRECNCIAS ENTRE CLASESHERENCIA INSTANCIA
RIMPLEMENTAR DATOS
CLASES extends new si si
CLASES ABSTRATAS
extends no 1 debe ser abstract
si
INTERFACES implement no No debe tener codigo
no
SINTAXIS Java proporciona dos palabras reservadas para trabajar con
interfaces:
interface e implements.
Para declarar una interface se utiliza:
modificador_acceso interface NombreInterfaz { .... }
PARA IMPLEMENTARLA EN UNA CLASE, SE UTILIZA LA FORMA:
modificador_acceso class NombreClase implements NombreInterfaz1 [, NombreInterfaz2]
EXTENSION DE INTERFACES Las interfaces pueden extender otras interfaces y, a
diferencia de las clases, una interface puede extender más de una interface
interface nombre_interface extends nombre_interface , . . . { tipo_retorno nombre_metodo ( lista_argumentos ) ;
. . . }
VENTAJAS El uso de interfaces proporciona las siguientes
ventajas: Organizar la programación. Obligar a que ciertas clases utilicen los
mismos métodos (nombres y parámetros). Establecer relaciones entre clases que no estén
relacionadas.
EJEMPLO DE TRES CLASES
INTERFAZ
CREACION DE UNA CLASE ABSTRACTA
CLASE – GENERAL ( DE IMPLEMENTACIÓN)
EJERCICIO GUIADO Crear una aplicación en java utilizando (interface)
a partir de la situación presentada. En la música hay muchos géneros musicales (Bachata, Baladas, Salsa, Vallenato…) y cada uno tiene su característica. Así mismo para las familias, empresas y artistas existe un gusto musical.
MODELO GRAFICO
MUSICA
Clases
Clases y Métodos; objetos,
Constructores
main
Se definen las clases abstractas
Se implementas las clases, es decir se le dan funciones, propiedades
Se crean las clases que le pasaran datos al main para su implementación
public interface musica {
public abstract String baladas(); public abstract String bachata(); String salsa(); String merengue(); String bolero();
}
interface
public class balada { private musica Mus;
public balada(musica Mus) { this.Mus = Mus;
} public void imprimirgustomusical (){
System.out.println(this.Mus.balada());
}
Class balada
IMPLEMENTACION DE INTERFACE public class implmusiempres implements musica
LA CLASE PRINCIPAL public static void main(String[] args) {
implmusiempres impl = new implmusiempres ("mp2345", "Los mejores del Valle", "Año 2007", "Ivan y Sus Bamban", "Bachata", "Entregate");
implmusiempresa implem = new implmusiempresa ("mp2345", "Los mejores del Valle", "Año 2007", "Ivan y Sus Bamban", "Bachata", "Entregate");
bolero BOLERO=new bolero(impl);
BOLERO.imprimirgustomusical();
}