SlideShare una empresa de Scribd logo
UNI VERSI DAD REGI ONAL AUTÓNOMA DE LOS
ANDES‘‘ UNI ANDES’’
TEMA DEL DOCUMENTO:
I NTERFAZ ENJ AVA
ESTUDI ANTE: J ONATHANISRAEL SALGUERO FLORES.
DOCENTE: BERNABÉ ORTEGA
2015
Puyo- Pastaza
I NTERFAZ ENJ AVA
Una i nterfaz en j ava es un conj unto de mét odos abstractos y propi edades. En ell as se
especifica qué se debe hacer pero no su i mpl e mentaci ón. Serán l as cl ases que
i mpl e menten estasi nterfacesl as que descri banl a lógica del comporta mi ento de t odos l os
mét odos del ai nterfaz. Un aspectof unda mental del asi nterfaces enJ ava es hacerl o que ya
he mos di cho que hace una i nterfaz de f or ma genérica: separar l a especificaci ón de una
cl ase (qué hace) de l a impl e mentaci ón (cómo l o hace). Esto se ha comprobado que da
lugar a progra mas más robustos y con menos errores.
Ventaj as al utilizar interfaces:
1. Se organiza la progra mación.
2. En J ava, l as i nterfaces se decl aran con l a pal abra reservada i nterface de manera
si mil ar a como se decl aran las clases abstractas.
3. Enl a decl araci ón n de unai nterfaz, l o único que puede aparecer son decl araciones
de mét odos (su no mbre y si gnatura, si n su i mpl ementaci ón n) y defi nici ones de
constantes si mbólicas.
4. Una i nterfaz no encapsula datos, só l o defi ne cuáles sonl os mét odos que han de
i mpl e mentar los obj etos de aquellas clases que i mple mentenlainterfaz.
5. Obligar a que ciertas clases utilicenl os mis mos métodos (nombres y pará metros).
6. Establ ecer relaci ones entre clases que no estén rel aci onadas.
Có mo usarl as?
Java utiliza dos pal abras reservadas para trabaj ar con i nterfaces que son i nterface e
i mpl e ments.
La si ntaxis para decl arar una i nterfaz es la sigui ente:
[public] interface nombreI nterfaz [extends listaSuperI nterfaces]
Unai nterfaz puede extender de otrasi nterfaces con el obj etivo de añadir más mét odos al a
mi s ma o sucl asificarla, para ell ose usarál a pal abra reservada "extends" seguida del alista
de i nterfaces de las cual es se qui era extender.
Las cl ases que qui eran usar l a i nterfaz tendrán que usar l a pal abra reservada
"i mpl e ments" y especificar el códi go de l os métodos que están defi ni dos enlainterfaz:
//Descri pci ón: Ejempl o de i nterfaz
//Autor: Dani el Leyva Cortés
//Contacto: transistor47@hot mail. com
i mport java.io. *;
Que es lainterfaz de una clase?
En teoría de ori entaci ón a obj etos, l ai nterfaz de una cl ase es todol o que pode mos hacer
con ella. Aef ectos prácticos: todos l os mét odos, propi edades y variabl es públicas (aunque
no deberían haber nunca variabl es públicas, debe mos usar propi edades en sul ugar) de l a
cl ase conf or man sui nterfaz.
Cuando usar interfaces?
En general si empre quetengas, o preveas que puedes tener más de una cl ase para hacerl o
mi s mo: usa i nterfaces. Es mej or pecar de exceso que de def ecto en este caso. No te
preocupes por penalizaciones de rendi mi ento entu aplicaci ón porque nolas hay.´
No di go que t oda cl ase deba i mpl e mentar una i nterfaz obligatoriamente, muchas cl ases
internas no l o i mpl e mentarán, pero en el caso de l as cl ases públicas (visibles desde el
exteri or) deberías pensarlo bi en. Ade más pensar enl ai nterfaz antes que enl a cl ase en sí,
es pensar enl o que debe hacerse enl ugar de pensar encomo debe hacerse. Usari nterfaces
per mite a posteri ori ca mbiar una cl ase por otra quei mpl e mentel a mi s ma i nterfaz y poder
integrar l a nueva cl ase de f or ma mucho más fácil (sól o debe mos modificar donde
instanci amos l os obj etos pero el resto de códi go queda igual).
Para defi nir una i nterfaz en C# tene mos que usar l a i nstrucci ón i nterface segui da del
no mbre y encerrado entre un par de llaves los mi embros que defi ne:
public interface I Ani mal
{
//...
}
Tal como comenta mos en el apartado de l a accesibilidad, l os mi e mbros de una i nterfaz
siempre son públicos, pero no debe mos i ndicarl o, ya que se sobreentiende que es así y el
compilador produciría un error i ndicándonos que el modificador de accesi bili dad no se
puede aplicar a ese ti po de elementos.
Co mol os mi e mbros del asi nterfaces no contienen códi go ej ecutabl e, sol o debe mos defi nir
la "fir ma" del mét odo, propi edad o evento que quere mos defi nir. En el caso de l as
propi edades, tendre mos que i ndicar l os bl oques get y/o set que l a cl ase o ti po que l a
i mpl e mente debe defi nir.
public interface I Ani mal
{
voi d Despl azar();
voi d Ali mentarse();
stri ng Especi e { get; set;}
int Edad { get;}
}
Segúnl asi ndicaci ones de no mencl atura de. NET Fra me work, se recomi enda que t odas l as
interfaces e mpi ecen con una I mayúscul a segui da del nombre al que hacer referenci a l a
interfaz.
¿Qué puede contener una interfaz?
Tal como he mos visto anteri or mente, una i nterfaz pude contener cualqui era de l os
mi e mbros que una cl ase puede contener, sal vo los ca mpos; por tanto, tambi én puede
contener eventos, pero debi do a cómo sontratadosl os eventos en C#, l os cual es vere mos
con más detalleenl al ección 4 de este pri mer módulo, yl a dependenci aconl os del egados,
para poder defi nir un evento en una i nterfaz, antes debe mos defi nir el delegado que se
usará con ese evento.
En el si gui ente ej e mpl o tene mos una i nterfaz que defi ne todos l os ti pos de mi e mbros
posi bl es, i ncl uso dos i ndizadores, en uno de l os cual es debe mos i mpl e mentar tanto el
bl oque get como el set y en el otro, que devuel ve un val or del mi s mo ti po que l ai nterfaz,
sol o defi ne el bl oque get:
// Decl araci ón del del egado para el evento de lainterfaz
public del egate voi d DatosCa mbi adosEvent Handl er();
public interface IPrueba
{voi d Mostrar();
stri ng Sal udo(stri ng nombre);
stri ng Nombre { get; set;}
int Edad { get;}
stri ng this[i nt index] { get; set;}
IPrueba this[stri ng i ndex] { get;}
event DatosCa mbi adosEvent Handl er DatosCa mbiados;}
Una i nterfaz es un contrato
Si empre que l ee mos sobrel as i nterfaces, l o pri mero conl o que nos sol emos encontrar es
que una i nterfaz es un contrato. Vea mos que nos qui eren decir con esa frase. Tal como
acaba mos de ver, l as i nterfaces sol o defi nen l os mi e mbros, pero no el códi go a usar en
cada uno de ell os, esto es así precisa mente porque el papel quej ueganl asinterfaces es el
de sol o i ndicar que es l o que una cl ase o estructura puede, o mej or di cho, debe
i mpl e mentar.
Si en una cl asei ndica mos que quere mos "i mpl e mentar" unai nterfaz, esa cl ase debe defi nir
cada uno del os mi e mbros quel ai nterfaz expone. De estaf or ma nos asegura mos de que si
una cl asei mpl e menta unai nterfaz, ta mbi éni mpl ementa todos l os mi e mbros defi ni dos en
di chai nterfaz. Cuando una cl asei mpl e menta unai nterfaz estáfir mando un contratocon el
que se compromete a definir todos l os mi e mbros que l a cl ase defi ne, de hecho el propi o
compilador nos obliga a hacerl o.
Ref erenci as Bi bliográficas:
1. "Java como progra mar". Deitel y Deitel. 5º edici ón, Person Educati on 2004
2. "Progra maci ón enJava", Mora Rodrí guez, Frank. Año: 2006
3. "Introducci ón a Java". Chojri n, Mauro. Año 2006
4. Gui ones de Cl ases. Inga. MSc. Patricia Haydeè Estrada de López. Progra maci ón III
Cicl oII/2006. Falcultad de Ingeni ería y Arquitectura. Uni versi dad de El Sal vador
5. "Aprenda Java como si estuvi era en Pri mero". García de J al ón, Javi er. Rodríguez,
José Ignaci o. y otros. Escuel a Superi or de I ngeni eros I ndustriales. Uni versi dad de
Navarra. Marzo, 1999

Más contenido relacionado

Destacado

Sex 'n' food- Perfect aphrodysiacs, promotes mental and pysical health
Sex 'n' food- Perfect aphrodysiacs, promotes mental and pysical healthSex 'n' food- Perfect aphrodysiacs, promotes mental and pysical health
Sex 'n' food- Perfect aphrodysiacs, promotes mental and pysical healthBabu Appat
 
150506 Property Portal Watch BKK Conference Agenda
150506 Property Portal Watch BKK Conference Agenda150506 Property Portal Watch BKK Conference Agenda
150506 Property Portal Watch BKK Conference AgendaProperty Portal Watch
 
Seminar ‘Revitalisering: Modern Realisme’: Veranderingen in de bouw - prof. d...
Seminar ‘Revitalisering: Modern Realisme’: Veranderingen in de bouw - prof. d...Seminar ‘Revitalisering: Modern Realisme’: Veranderingen in de bouw - prof. d...
Seminar ‘Revitalisering: Modern Realisme’: Veranderingen in de bouw - prof. d...Croonwolter&dros
 
Cmcl presentation peterborough active together conference may 29 2015
Cmcl presentation peterborough active together conference may 29 2015Cmcl presentation peterborough active together conference may 29 2015
Cmcl presentation peterborough active together conference may 29 2015PeterboroughCPD
 
Ck21 presentation team 3
Ck21 presentation team 3Ck21 presentation team 3
Ck21 presentation team 3Campus
 
Aprendiendo corel-draw-x7-desde-0
Aprendiendo corel-draw-x7-desde-0 Aprendiendo corel-draw-x7-desde-0
Aprendiendo corel-draw-x7-desde-0 computov2015
 
Education and functionalism1
Education and functionalism1Education and functionalism1
Education and functionalism1lucylee79
 

Destacado (10)

Codigos
CodigosCodigos
Codigos
 
Sex 'n' food- Perfect aphrodysiacs, promotes mental and pysical health
Sex 'n' food- Perfect aphrodysiacs, promotes mental and pysical healthSex 'n' food- Perfect aphrodysiacs, promotes mental and pysical health
Sex 'n' food- Perfect aphrodysiacs, promotes mental and pysical health
 
Rmi
RmiRmi
Rmi
 
150506 Property Portal Watch BKK Conference Agenda
150506 Property Portal Watch BKK Conference Agenda150506 Property Portal Watch BKK Conference Agenda
150506 Property Portal Watch BKK Conference Agenda
 
Socket
SocketSocket
Socket
 
Seminar ‘Revitalisering: Modern Realisme’: Veranderingen in de bouw - prof. d...
Seminar ‘Revitalisering: Modern Realisme’: Veranderingen in de bouw - prof. d...Seminar ‘Revitalisering: Modern Realisme’: Veranderingen in de bouw - prof. d...
Seminar ‘Revitalisering: Modern Realisme’: Veranderingen in de bouw - prof. d...
 
Cmcl presentation peterborough active together conference may 29 2015
Cmcl presentation peterborough active together conference may 29 2015Cmcl presentation peterborough active together conference may 29 2015
Cmcl presentation peterborough active together conference may 29 2015
 
Ck21 presentation team 3
Ck21 presentation team 3Ck21 presentation team 3
Ck21 presentation team 3
 
Aprendiendo corel-draw-x7-desde-0
Aprendiendo corel-draw-x7-desde-0 Aprendiendo corel-draw-x7-desde-0
Aprendiendo corel-draw-x7-desde-0
 
Education and functionalism1
Education and functionalism1Education and functionalism1
Education and functionalism1
 

Similar a Interfaz java y c#

RECOPILACION DE LO APRENDIDO
RECOPILACION DE LO APRENDIDO RECOPILACION DE LO APRENDIDO
RECOPILACION DE LO APRENDIDO Olga Carvajal
 
Manual netlogo basico insisoc
Manual netlogo basico insisocManual netlogo basico insisoc
Manual netlogo basico insisocGaby Martz
 
Programación en base de datos
Programación en base de datosProgramación en base de datos
Programación en base de datosFred M. Jr.
 
Repaso de conocimientos
Repaso de  conocimientosRepaso de  conocimientos
Repaso de conocimientostovar1982
 
Estructuras básicas 10 3
Estructuras básicas 10 3 Estructuras básicas 10 3
Estructuras básicas 10 3 juansolano67
 
Estructuras básicas tecnologia P3 2021
Estructuras básicas tecnologia P3 2021Estructuras básicas tecnologia P3 2021
Estructuras básicas tecnologia P3 2021DavidLopez979
 
8.Flujo, Comportamiento, Patrones y WebApps.pdf
8.Flujo, Comportamiento, Patrones y WebApps.pdf8.Flujo, Comportamiento, Patrones y WebApps.pdf
8.Flujo, Comportamiento, Patrones y WebApps.pdfRamiro Estigarribia Canese
 
04 d notacion_casos_uso
04 d notacion_casos_uso04 d notacion_casos_uso
04 d notacion_casos_usoJuan Gómez
 
Modelamiento de Casos de Uso RUP
Modelamiento  de Casos de Uso  RUPModelamiento  de Casos de Uso  RUP
Modelamiento de Casos de Uso RUPlobi7o
 
Modelamiento de casos de uso articulo terminado
Modelamiento  de casos de uso  articulo  terminadoModelamiento  de casos de uso  articulo  terminado
Modelamiento de casos de uso articulo terminadoFrankito Quintana Huaman
 
Fundamentos de programación
Fundamentos de programaciónFundamentos de programación
Fundamentos de programaciónZarlenin docente
 
lenguaje y herramientas
lenguaje y herramientaslenguaje y herramientas
lenguaje y herramientasivan penagos
 

Similar a Interfaz java y c# (20)

Manual JPA
Manual JPAManual JPA
Manual JPA
 
RECOPILACION DE LO APRENDIDO
RECOPILACION DE LO APRENDIDO RECOPILACION DE LO APRENDIDO
RECOPILACION DE LO APRENDIDO
 
Manual netlogo basico insisoc
Manual netlogo basico insisocManual netlogo basico insisoc
Manual netlogo basico insisoc
 
Clei 4 clase de repaso sabatina rmb
Clei 4 clase de repaso sabatina rmbClei 4 clase de repaso sabatina rmb
Clei 4 clase de repaso sabatina rmb
 
Programación en base de datos
Programación en base de datosProgramación en base de datos
Programación en base de datos
 
Repaso de conocimientos
Repaso de  conocimientosRepaso de  conocimientos
Repaso de conocimientos
 
Estructuras básicas 10 3
Estructuras básicas 10 3 Estructuras básicas 10 3
Estructuras básicas 10 3
 
Estructuras básicas tecnologia P3 2021
Estructuras básicas tecnologia P3 2021Estructuras básicas tecnologia P3 2021
Estructuras básicas tecnologia P3 2021
 
Practica3
Practica3Practica3
Practica3
 
8.Flujo, Comportamiento, Patrones y WebApps.pdf
8.Flujo, Comportamiento, Patrones y WebApps.pdf8.Flujo, Comportamiento, Patrones y WebApps.pdf
8.Flujo, Comportamiento, Patrones y WebApps.pdf
 
04 d notacion_casos_uso
04 d notacion_casos_uso04 d notacion_casos_uso
04 d notacion_casos_uso
 
Clei 5 clase de repaso sabatina rmb
Clei 5 clase de repaso sabatina rmbClei 5 clase de repaso sabatina rmb
Clei 5 clase de repaso sabatina rmb
 
Manualjpa
ManualjpaManualjpa
Manualjpa
 
Manualjpa
ManualjpaManualjpa
Manualjpa
 
UML
UMLUML
UML
 
Modelamiento de Casos de Uso RUP
Modelamiento  de Casos de Uso  RUPModelamiento  de Casos de Uso  RUP
Modelamiento de Casos de Uso RUP
 
Modelamiento de casos de uso articulo terminado
Modelamiento  de casos de uso  articulo  terminadoModelamiento  de casos de uso  articulo  terminado
Modelamiento de casos de uso articulo terminado
 
Fundamentos de programación
Fundamentos de programaciónFundamentos de programación
Fundamentos de programación
 
lenguaje y herramientas
lenguaje y herramientaslenguaje y herramientas
lenguaje y herramientas
 
IntroduccionPOO
IntroduccionPOOIntroduccionPOO
IntroduccionPOO
 

Más de Jonathan Israel (15)

Consultas
ConsultasConsultas
Consultas
 
Generador codigo
Generador codigoGenerador codigo
Generador codigo
 
Distros en centos
Distros en centosDistros en centos
Distros en centos
 
CORBA
CORBACORBA
CORBA
 
Ciclovs metodologia
Ciclovs metodologiaCiclovs metodologia
Ciclovs metodologia
 
Consultas SQL
Consultas SQLConsultas SQL
Consultas SQL
 
Java
JavaJava
Java
 
Prog1
Prog1Prog1
Prog1
 
Programas en netbeans
Programas en netbeansProgramas en netbeans
Programas en netbeans
 
Programas en netbeans
Programas en netbeansProgramas en netbeans
Programas en netbeans
 
Copilacion de ejercicios en java
Copilacion de ejercicios en javaCopilacion de ejercicios en java
Copilacion de ejercicios en java
 
Universidad regional autónoma de lo1
Universidad regional autónoma de lo1Universidad regional autónoma de lo1
Universidad regional autónoma de lo1
 
Enclausulamiento java
Enclausulamiento javaEnclausulamiento java
Enclausulamiento java
 
Enclausulamiento java
Enclausulamiento javaEnclausulamiento java
Enclausulamiento java
 
Poo
PooPoo
Poo
 

Último

PROYECTO INTEGRADOR ARCHIDUQUE. presentacion
PROYECTO INTEGRADOR ARCHIDUQUE. presentacionPROYECTO INTEGRADOR ARCHIDUQUE. presentacion
PROYECTO INTEGRADOR ARCHIDUQUE. presentacionyorbravot123
 
Presentación Revistas y Periódicos Digitales
Presentación Revistas y Periódicos DigitalesPresentación Revistas y Periódicos Digitales
Presentación Revistas y Periódicos Digitalesnievesjiesc03
 
True Mother's Speech at THE PENTECOST SERVICE..pdf
True Mother's Speech at THE PENTECOST SERVICE..pdfTrue Mother's Speech at THE PENTECOST SERVICE..pdf
True Mother's Speech at THE PENTECOST SERVICE..pdfMercedes Gonzalez
 
Asistencia Tecnica Cartilla Pedagogica DUA Ccesa007.pdf
Asistencia Tecnica Cartilla Pedagogica DUA Ccesa007.pdfAsistencia Tecnica Cartilla Pedagogica DUA Ccesa007.pdf
Asistencia Tecnica Cartilla Pedagogica DUA Ccesa007.pdfDemetrio Ccesa Rayme
 
CALENDARIZACION DEL MES DE JUNIO - JULIO 24
CALENDARIZACION DEL MES DE JUNIO - JULIO 24CALENDARIZACION DEL MES DE JUNIO - JULIO 24
CALENDARIZACION DEL MES DE JUNIO - JULIO 24auxsoporte
 
diagnostico final (1). analisis - encuestas
diagnostico final (1). analisis - encuestasdiagnostico final (1). analisis - encuestas
diagnostico final (1). analisis - encuestasansomora123
 
Horarios Exámenes EVAU Ordinaria 2024 de Madrid
Horarios Exámenes EVAU Ordinaria 2024 de MadridHorarios Exámenes EVAU Ordinaria 2024 de Madrid
Horarios Exámenes EVAU Ordinaria 2024 de Madrid20minutos
 
UNIDAD DE APRENDIZAJE DEL MES Junio 2024
UNIDAD DE APRENDIZAJE DEL MES  Junio 2024UNIDAD DE APRENDIZAJE DEL MES  Junio 2024
UNIDAD DE APRENDIZAJE DEL MES Junio 2024EdwardYumbato1
 
Lección 1: Los complementos del Verbo ...
Lección 1: Los complementos del Verbo ...Lección 1: Los complementos del Verbo ...
Lección 1: Los complementos del Verbo ...odalisvelezg
 
Creación WEB. Ideas clave para crear un sitio web
Creación WEB. Ideas clave para crear un sitio webCreación WEB. Ideas clave para crear un sitio web
Creación WEB. Ideas clave para crear un sitio webinformatica4
 
Semana #10-PM3 del 27 al 31 de mayo.pptx
Semana #10-PM3 del 27 al 31 de mayo.pptxSemana #10-PM3 del 27 al 31 de mayo.pptx
Semana #10-PM3 del 27 al 31 de mayo.pptxLorenaCovarrubias12
 
Presentación Propuesta de Proyecto Social Colorido y Juvenil Multicolor y Neg...
Presentación Propuesta de Proyecto Social Colorido y Juvenil Multicolor y Neg...Presentación Propuesta de Proyecto Social Colorido y Juvenil Multicolor y Neg...
Presentación Propuesta de Proyecto Social Colorido y Juvenil Multicolor y Neg...crcamora123
 
ensayo literario rios profundos jose maria ARGUEDAS
ensayo literario rios profundos jose maria ARGUEDASensayo literario rios profundos jose maria ARGUEDAS
ensayo literario rios profundos jose maria ARGUEDASAntoineMoltisanti
 
Fase 3; Estudio de la Geometría Analítica
Fase 3; Estudio de la Geometría AnalíticaFase 3; Estudio de la Geometría Analítica
Fase 3; Estudio de la Geometría AnalíticaYasneidyGonzalez
 
CAPACIDADES SOCIOMOTRICES LENGUAJE, INTROYECCIÓN, INTROSPECCION
CAPACIDADES SOCIOMOTRICES LENGUAJE, INTROYECCIÓN, INTROSPECCIONCAPACIDADES SOCIOMOTRICES LENGUAJE, INTROYECCIÓN, INTROSPECCION
CAPACIDADES SOCIOMOTRICES LENGUAJE, INTROYECCIÓN, INTROSPECCIONMasielPMP
 
PLAN DE TRABAJO CONCURSO NACIONAL CREA Y EMPRENDE.docx
PLAN DE TRABAJO CONCURSO NACIONAL CREA Y EMPRENDE.docxPLAN DE TRABAJO CONCURSO NACIONAL CREA Y EMPRENDE.docx
PLAN DE TRABAJO CONCURSO NACIONAL CREA Y EMPRENDE.docxDavidAlvarez758073
 

Último (20)

PROYECTO INTEGRADOR ARCHIDUQUE. presentacion
PROYECTO INTEGRADOR ARCHIDUQUE. presentacionPROYECTO INTEGRADOR ARCHIDUQUE. presentacion
PROYECTO INTEGRADOR ARCHIDUQUE. presentacion
 
Presentación Revistas y Periódicos Digitales
Presentación Revistas y Periódicos DigitalesPresentación Revistas y Periódicos Digitales
Presentación Revistas y Periódicos Digitales
 
5.Deicticos Uno_Enfermería_EspanolAcademico
5.Deicticos Uno_Enfermería_EspanolAcademico5.Deicticos Uno_Enfermería_EspanolAcademico
5.Deicticos Uno_Enfermería_EspanolAcademico
 
True Mother's Speech at THE PENTECOST SERVICE..pdf
True Mother's Speech at THE PENTECOST SERVICE..pdfTrue Mother's Speech at THE PENTECOST SERVICE..pdf
True Mother's Speech at THE PENTECOST SERVICE..pdf
 
Asistencia Tecnica Cartilla Pedagogica DUA Ccesa007.pdf
Asistencia Tecnica Cartilla Pedagogica DUA Ccesa007.pdfAsistencia Tecnica Cartilla Pedagogica DUA Ccesa007.pdf
Asistencia Tecnica Cartilla Pedagogica DUA Ccesa007.pdf
 
3.Conectores uno_Enfermería_EspAcademico
3.Conectores uno_Enfermería_EspAcademico3.Conectores uno_Enfermería_EspAcademico
3.Conectores uno_Enfermería_EspAcademico
 
CALENDARIZACION DEL MES DE JUNIO - JULIO 24
CALENDARIZACION DEL MES DE JUNIO - JULIO 24CALENDARIZACION DEL MES DE JUNIO - JULIO 24
CALENDARIZACION DEL MES DE JUNIO - JULIO 24
 
diagnostico final (1). analisis - encuestas
diagnostico final (1). analisis - encuestasdiagnostico final (1). analisis - encuestas
diagnostico final (1). analisis - encuestas
 
PPT: El fundamento del gobierno de Dios.
PPT: El fundamento del gobierno de Dios.PPT: El fundamento del gobierno de Dios.
PPT: El fundamento del gobierno de Dios.
 
Horarios Exámenes EVAU Ordinaria 2024 de Madrid
Horarios Exámenes EVAU Ordinaria 2024 de MadridHorarios Exámenes EVAU Ordinaria 2024 de Madrid
Horarios Exámenes EVAU Ordinaria 2024 de Madrid
 
UNIDAD DE APRENDIZAJE DEL MES Junio 2024
UNIDAD DE APRENDIZAJE DEL MES  Junio 2024UNIDAD DE APRENDIZAJE DEL MES  Junio 2024
UNIDAD DE APRENDIZAJE DEL MES Junio 2024
 
Lección 1: Los complementos del Verbo ...
Lección 1: Los complementos del Verbo ...Lección 1: Los complementos del Verbo ...
Lección 1: Los complementos del Verbo ...
 
Creación WEB. Ideas clave para crear un sitio web
Creación WEB. Ideas clave para crear un sitio webCreación WEB. Ideas clave para crear un sitio web
Creación WEB. Ideas clave para crear un sitio web
 
Semana #10-PM3 del 27 al 31 de mayo.pptx
Semana #10-PM3 del 27 al 31 de mayo.pptxSemana #10-PM3 del 27 al 31 de mayo.pptx
Semana #10-PM3 del 27 al 31 de mayo.pptx
 
Conocemos la ermita de Ntra. Sra. del Arrabal
Conocemos la ermita de Ntra. Sra. del ArrabalConocemos la ermita de Ntra. Sra. del Arrabal
Conocemos la ermita de Ntra. Sra. del Arrabal
 
Presentación Propuesta de Proyecto Social Colorido y Juvenil Multicolor y Neg...
Presentación Propuesta de Proyecto Social Colorido y Juvenil Multicolor y Neg...Presentación Propuesta de Proyecto Social Colorido y Juvenil Multicolor y Neg...
Presentación Propuesta de Proyecto Social Colorido y Juvenil Multicolor y Neg...
 
ensayo literario rios profundos jose maria ARGUEDAS
ensayo literario rios profundos jose maria ARGUEDASensayo literario rios profundos jose maria ARGUEDAS
ensayo literario rios profundos jose maria ARGUEDAS
 
Fase 3; Estudio de la Geometría Analítica
Fase 3; Estudio de la Geometría AnalíticaFase 3; Estudio de la Geometría Analítica
Fase 3; Estudio de la Geometría Analítica
 
CAPACIDADES SOCIOMOTRICES LENGUAJE, INTROYECCIÓN, INTROSPECCION
CAPACIDADES SOCIOMOTRICES LENGUAJE, INTROYECCIÓN, INTROSPECCIONCAPACIDADES SOCIOMOTRICES LENGUAJE, INTROYECCIÓN, INTROSPECCION
CAPACIDADES SOCIOMOTRICES LENGUAJE, INTROYECCIÓN, INTROSPECCION
 
PLAN DE TRABAJO CONCURSO NACIONAL CREA Y EMPRENDE.docx
PLAN DE TRABAJO CONCURSO NACIONAL CREA Y EMPRENDE.docxPLAN DE TRABAJO CONCURSO NACIONAL CREA Y EMPRENDE.docx
PLAN DE TRABAJO CONCURSO NACIONAL CREA Y EMPRENDE.docx
 

Interfaz java y c#

  • 1. UNI VERSI DAD REGI ONAL AUTÓNOMA DE LOS ANDES‘‘ UNI ANDES’’ TEMA DEL DOCUMENTO: I NTERFAZ ENJ AVA ESTUDI ANTE: J ONATHANISRAEL SALGUERO FLORES. DOCENTE: BERNABÉ ORTEGA 2015 Puyo- Pastaza
  • 2. I NTERFAZ ENJ AVA Una i nterfaz en j ava es un conj unto de mét odos abstractos y propi edades. En ell as se especifica qué se debe hacer pero no su i mpl e mentaci ón. Serán l as cl ases que i mpl e menten estasi nterfacesl as que descri banl a lógica del comporta mi ento de t odos l os mét odos del ai nterfaz. Un aspectof unda mental del asi nterfaces enJ ava es hacerl o que ya he mos di cho que hace una i nterfaz de f or ma genérica: separar l a especificaci ón de una cl ase (qué hace) de l a impl e mentaci ón (cómo l o hace). Esto se ha comprobado que da lugar a progra mas más robustos y con menos errores. Ventaj as al utilizar interfaces: 1. Se organiza la progra mación. 2. En J ava, l as i nterfaces se decl aran con l a pal abra reservada i nterface de manera si mil ar a como se decl aran las clases abstractas. 3. Enl a decl araci ón n de unai nterfaz, l o único que puede aparecer son decl araciones de mét odos (su no mbre y si gnatura, si n su i mpl ementaci ón n) y defi nici ones de constantes si mbólicas. 4. Una i nterfaz no encapsula datos, só l o defi ne cuáles sonl os mét odos que han de i mpl e mentar los obj etos de aquellas clases que i mple mentenlainterfaz. 5. Obligar a que ciertas clases utilicenl os mis mos métodos (nombres y pará metros). 6. Establ ecer relaci ones entre clases que no estén rel aci onadas. Có mo usarl as? Java utiliza dos pal abras reservadas para trabaj ar con i nterfaces que son i nterface e i mpl e ments. La si ntaxis para decl arar una i nterfaz es la sigui ente: [public] interface nombreI nterfaz [extends listaSuperI nterfaces] Unai nterfaz puede extender de otrasi nterfaces con el obj etivo de añadir más mét odos al a mi s ma o sucl asificarla, para ell ose usarál a pal abra reservada "extends" seguida del alista de i nterfaces de las cual es se qui era extender. Las cl ases que qui eran usar l a i nterfaz tendrán que usar l a pal abra reservada "i mpl e ments" y especificar el códi go de l os métodos que están defi ni dos enlainterfaz: //Descri pci ón: Ejempl o de i nterfaz //Autor: Dani el Leyva Cortés //Contacto: transistor47@hot mail. com i mport java.io. *; Que es lainterfaz de una clase? En teoría de ori entaci ón a obj etos, l ai nterfaz de una cl ase es todol o que pode mos hacer con ella. Aef ectos prácticos: todos l os mét odos, propi edades y variabl es públicas (aunque no deberían haber nunca variabl es públicas, debe mos usar propi edades en sul ugar) de l a cl ase conf or man sui nterfaz. Cuando usar interfaces?
  • 3. En general si empre quetengas, o preveas que puedes tener más de una cl ase para hacerl o mi s mo: usa i nterfaces. Es mej or pecar de exceso que de def ecto en este caso. No te preocupes por penalizaciones de rendi mi ento entu aplicaci ón porque nolas hay.´ No di go que t oda cl ase deba i mpl e mentar una i nterfaz obligatoriamente, muchas cl ases internas no l o i mpl e mentarán, pero en el caso de l as cl ases públicas (visibles desde el exteri or) deberías pensarlo bi en. Ade más pensar enl ai nterfaz antes que enl a cl ase en sí, es pensar enl o que debe hacerse enl ugar de pensar encomo debe hacerse. Usari nterfaces per mite a posteri ori ca mbiar una cl ase por otra quei mpl e mentel a mi s ma i nterfaz y poder integrar l a nueva cl ase de f or ma mucho más fácil (sól o debe mos modificar donde instanci amos l os obj etos pero el resto de códi go queda igual). Para defi nir una i nterfaz en C# tene mos que usar l a i nstrucci ón i nterface segui da del no mbre y encerrado entre un par de llaves los mi embros que defi ne: public interface I Ani mal { //... } Tal como comenta mos en el apartado de l a accesibilidad, l os mi e mbros de una i nterfaz siempre son públicos, pero no debe mos i ndicarl o, ya que se sobreentiende que es así y el compilador produciría un error i ndicándonos que el modificador de accesi bili dad no se puede aplicar a ese ti po de elementos. Co mol os mi e mbros del asi nterfaces no contienen códi go ej ecutabl e, sol o debe mos defi nir la "fir ma" del mét odo, propi edad o evento que quere mos defi nir. En el caso de l as propi edades, tendre mos que i ndicar l os bl oques get y/o set que l a cl ase o ti po que l a i mpl e mente debe defi nir. public interface I Ani mal { voi d Despl azar(); voi d Ali mentarse(); stri ng Especi e { get; set;} int Edad { get;} } Segúnl asi ndicaci ones de no mencl atura de. NET Fra me work, se recomi enda que t odas l as interfaces e mpi ecen con una I mayúscul a segui da del nombre al que hacer referenci a l a interfaz. ¿Qué puede contener una interfaz? Tal como he mos visto anteri or mente, una i nterfaz pude contener cualqui era de l os mi e mbros que una cl ase puede contener, sal vo los ca mpos; por tanto, tambi én puede contener eventos, pero debi do a cómo sontratadosl os eventos en C#, l os cual es vere mos con más detalleenl al ección 4 de este pri mer módulo, yl a dependenci aconl os del egados,
  • 4. para poder defi nir un evento en una i nterfaz, antes debe mos defi nir el delegado que se usará con ese evento. En el si gui ente ej e mpl o tene mos una i nterfaz que defi ne todos l os ti pos de mi e mbros posi bl es, i ncl uso dos i ndizadores, en uno de l os cual es debe mos i mpl e mentar tanto el bl oque get como el set y en el otro, que devuel ve un val or del mi s mo ti po que l ai nterfaz, sol o defi ne el bl oque get: // Decl araci ón del del egado para el evento de lainterfaz public del egate voi d DatosCa mbi adosEvent Handl er(); public interface IPrueba {voi d Mostrar(); stri ng Sal udo(stri ng nombre); stri ng Nombre { get; set;} int Edad { get;} stri ng this[i nt index] { get; set;} IPrueba this[stri ng i ndex] { get;} event DatosCa mbi adosEvent Handl er DatosCa mbiados;} Una i nterfaz es un contrato Si empre que l ee mos sobrel as i nterfaces, l o pri mero conl o que nos sol emos encontrar es que una i nterfaz es un contrato. Vea mos que nos qui eren decir con esa frase. Tal como acaba mos de ver, l as i nterfaces sol o defi nen l os mi e mbros, pero no el códi go a usar en cada uno de ell os, esto es así precisa mente porque el papel quej ueganl asinterfaces es el de sol o i ndicar que es l o que una cl ase o estructura puede, o mej or di cho, debe i mpl e mentar. Si en una cl asei ndica mos que quere mos "i mpl e mentar" unai nterfaz, esa cl ase debe defi nir cada uno del os mi e mbros quel ai nterfaz expone. De estaf or ma nos asegura mos de que si una cl asei mpl e menta unai nterfaz, ta mbi éni mpl ementa todos l os mi e mbros defi ni dos en di chai nterfaz. Cuando una cl asei mpl e menta unai nterfaz estáfir mando un contratocon el que se compromete a definir todos l os mi e mbros que l a cl ase defi ne, de hecho el propi o compilador nos obliga a hacerl o. Ref erenci as Bi bliográficas: 1. "Java como progra mar". Deitel y Deitel. 5º edici ón, Person Educati on 2004 2. "Progra maci ón enJava", Mora Rodrí guez, Frank. Año: 2006 3. "Introducci ón a Java". Chojri n, Mauro. Año 2006 4. Gui ones de Cl ases. Inga. MSc. Patricia Haydeè Estrada de López. Progra maci ón III Cicl oII/2006. Falcultad de Ingeni ería y Arquitectura. Uni versi dad de El Sal vador 5. "Aprenda Java como si estuvi era en Pri mero". García de J al ón, Javi er. Rodríguez, José Ignaci o. y otros. Escuel a Superi or de I ngeni eros I ndustriales. Uni versi dad de Navarra. Marzo, 1999