SlideShare uma empresa Scribd logo
1 de 8
Escuela Politécnica del
         Ejército

    CLASES ABSTRACTAS E INTERFACES
            Ing. Paulo Guerra


Alejandro Merizalde

                 19-12-2012
CLASE ABSTRACTA
Una clase abstracta es aquella que declara la existencia de métodos pero no la implementación
de estos; es decir, los métodos simplemente son declarados.
Una clase abstracta puede contener métodos no abstractos pero al menos uno de estos debe ser
abstracto.
Para declarar una clase o método como abstractos, se utiliza la palabra reservada abstract, de la
siguiente manera:




Una clase abstracta no se puede instanciar (es decir no se pueden volver en objetos) pero si se
puede heredar y las clases hijas serán las encargadas de agregar la funcionalidad a los métodos
abstractos.
Ejemplo:

En el siguiente ejemplo tomaremos dos figuras geométricas, el Rectángulo y el
Triangulo rectángulo, para el ejemplo sólo consideraremos dos características
similares: el ancho y el alto, por lo que podemos crear una clase padre Figura
geométrica con estas dos características y sus métodos correspondientes, además del
métodos getArea() que devolverá el área de la Figura. Pero, se presenta un problema,
el cálculo del área del Rectángulo es diferente al cálculo del área del Triangulo.

                        Area del Rectangulo = ancho X alto
                       Area del Triangulo = (ancho X alto)/2

Por lo tanto, el método getArea() deberá ser abstracto, por lo cual, la clase Figura
también deberá ser
abstracta.
Esta será nuestra clase padre Abstracta, en donde tomaremos los datos ancho y alto:




Y Aquí tenemos las clases hijas; una para obtener el área del rectángulo y otra para el
área del triángulo:
Y finalmente en el main, llamamos a las clases y obtenemos los resultados de
las dos áreas:
INTERFACE
Una interface es una variante de una clase abstracta con la condición de que todos sus métodos
deben ser abstractos. Si la interface va a tener atributos, éstos deben llevar las palabras
reservadas static final y con un valor inicial ya que funcionan como constantes por lo que, por
convención, su nombre va en mayúsculas.

           interface Nomina
           {
                      public static final String EMPRESA = "Patito, S. A.";
                      public void detalleDeEmpleado(Nomina obj);
           }

Una clase implementa una o más interfaces con la palabra reservada implements.

           class Empleado implements Nomina
           {
             ...
           }

Esto sirve para simular una herencia múltiple que java no soporta.
Ejemplo:
En el siguiente ejemplo, tomaremos de ejemplo a los animales. Se sabe que todos los animales
emiten un sonido , por ejemplo el perro ladra, el gato maúlla, etc.

Entonces se puede crear una interfaz Animal con el método hablar( ).




Ahora crearemos una clase Perro y una Gato que implemente la interfaz Animal, en donde
obligatoriamente tendremos que implementar el método hablar().
Finalmente en el main, llamamos a las clases y utilizamos los métodos
creados.

Mais conteúdo relacionado

Mais procurados

Algoritmos Ordenamiento
Algoritmos OrdenamientoAlgoritmos Ordenamiento
Algoritmos Ordenamiento
Daniel Guaycha
 
Diferencia entre una función y una relación
Diferencia entre una función y una relaciónDiferencia entre una función y una relación
Diferencia entre una función y una relación
Nazth Dleon
 
Clases abstractas e interfaces (AlexandraPerez)
Clases abstractas e interfaces (AlexandraPerez)Clases abstractas e interfaces (AlexandraPerez)
Clases abstractas e interfaces (AlexandraPerez)
Alexandra Pérez
 
INTRODUCCION A LA LOGICA DIFUSA
INTRODUCCION A LA LOGICA DIFUSAINTRODUCCION A LA LOGICA DIFUSA
INTRODUCCION A LA LOGICA DIFUSA
Telmo Viteri
 
Introduccion a la logica difusa
Introduccion a la logica difusaIntroduccion a la logica difusa
Introduccion a la logica difusa
Carlos Villaseñor
 

Mais procurados (20)

Expresiones regulares
Expresiones regularesExpresiones regulares
Expresiones regulares
 
Algoritmos Ordenamiento
Algoritmos OrdenamientoAlgoritmos Ordenamiento
Algoritmos Ordenamiento
 
Diferencia entre una función y una relación
Diferencia entre una función y una relaciónDiferencia entre una función y una relación
Diferencia entre una función y una relación
 
Tipos de gramatica y arboles de derivacion
Tipos de gramatica y arboles de derivacionTipos de gramatica y arboles de derivacion
Tipos de gramatica y arboles de derivacion
 
Fundamentos matematicos para la criptografia asimetrica
Fundamentos matematicos para la criptografia asimetricaFundamentos matematicos para la criptografia asimetrica
Fundamentos matematicos para la criptografia asimetrica
 
Teoria de Numeros
Teoria de Numeros Teoria de Numeros
Teoria de Numeros
 
Exposición de compiladores e intérpretes - Profesor: Eddie Malca
Exposición de compiladores e intérpretes - Profesor: Eddie MalcaExposición de compiladores e intérpretes - Profesor: Eddie Malca
Exposición de compiladores e intérpretes - Profesor: Eddie Malca
 
Teoría básica de los semigrupos y grupos
Teoría básica de los semigrupos y gruposTeoría básica de los semigrupos y grupos
Teoría básica de los semigrupos y grupos
 
Típos de grámatica y más, exposición de compiladores e intérpretes
Típos de grámatica y más, exposición de compiladores e intérpretesTípos de grámatica y más, exposición de compiladores e intérpretes
Típos de grámatica y más, exposición de compiladores e intérpretes
 
Introducción a la programación y la informática. Tema 6
Introducción a la programación y la informática. Tema 6Introducción a la programación y la informática. Tema 6
Introducción a la programación y la informática. Tema 6
 
Integrales indefinida
Integrales indefinidaIntegrales indefinida
Integrales indefinida
 
Clases abstractas e interfaces (AlexandraPerez)
Clases abstractas e interfaces (AlexandraPerez)Clases abstractas e interfaces (AlexandraPerez)
Clases abstractas e interfaces (AlexandraPerez)
 
Presentación Serie De Fourier
Presentación Serie De FourierPresentación Serie De Fourier
Presentación Serie De Fourier
 
Tema 4
Tema 4Tema 4
Tema 4
 
INTRODUCCION A LA LOGICA DIFUSA
INTRODUCCION A LA LOGICA DIFUSAINTRODUCCION A LA LOGICA DIFUSA
INTRODUCCION A LA LOGICA DIFUSA
 
Funciones
FuncionesFunciones
Funciones
 
Introduccion a la logica difusa
Introduccion a la logica difusaIntroduccion a la logica difusa
Introduccion a la logica difusa
 
CONCEPTOS Y FUNDAMENTOS DE LÓGICA DIFUSA
CONCEPTOS Y FUNDAMENTOS    DE LÓGICA DIFUSACONCEPTOS Y FUNDAMENTOS    DE LÓGICA DIFUSA
CONCEPTOS Y FUNDAMENTOS DE LÓGICA DIFUSA
 
Elementos de la funcion
Elementos de la funcionElementos de la funcion
Elementos de la funcion
 
FUNCIONES (MATEMÁTICAS)
FUNCIONES (MATEMÁTICAS)FUNCIONES (MATEMÁTICAS)
FUNCIONES (MATEMÁTICAS)
 

Semelhante a Alejandro Merizalde

Clases abstractas e interfaces en java
Clases abstractas e interfaces en javaClases abstractas e interfaces en java
Clases abstractas e interfaces en java
jcalmeida2
 
Clasesabstractaseinterfacesalexandraperez 121220190613-phpapp02
Clasesabstractaseinterfacesalexandraperez 121220190613-phpapp02Clasesabstractaseinterfacesalexandraperez 121220190613-phpapp02
Clasesabstractaseinterfacesalexandraperez 121220190613-phpapp02
Kositha Jimhiz G
 
Clases abstractas java metodos abstract class api ejemplo ejercicio
Clases abstractas java metodos abstract class api ejemplo ejercicioClases abstractas java metodos abstract class api ejemplo ejercicio
Clases abstractas java metodos abstract class api ejemplo ejercicio
Jose Luis Moreno Arcos
 
Clases abstractas e interfaces en java
Clases abstractas e interfaces en java Clases abstractas e interfaces en java
Clases abstractas e interfaces en java
Nathy_A
 
Explicacion de interface
Explicacion de interfaceExplicacion de interface
Explicacion de interface
Boris Salleg
 
Clases abstractas e interfaces
Clases abstractas e interfacesClases abstractas e interfaces
Clases abstractas e interfaces
lopezcortes
 
Derivación implícita,
Derivación implícita,Derivación implícita,
Derivación implícita,
Pablo Perez
 
Programación orientada a objetos
Programación orientada a objetosProgramación orientada a objetos
Programación orientada a objetos
Joseph Bros
 

Semelhante a Alejandro Merizalde (20)

Clases abstractas e interfaces en java
Clases abstractas e interfaces en javaClases abstractas e interfaces en java
Clases abstractas e interfaces en java
 
Clasesabstractaseinterfacesalexandraperez 121220190613-phpapp02
Clasesabstractaseinterfacesalexandraperez 121220190613-phpapp02Clasesabstractaseinterfacesalexandraperez 121220190613-phpapp02
Clasesabstractaseinterfacesalexandraperez 121220190613-phpapp02
 
03 java poo_parte_2
03 java poo_parte_203 java poo_parte_2
03 java poo_parte_2
 
Clases abstractas java metodos abstract class api ejemplo ejercicio
Clases abstractas java metodos abstract class api ejemplo ejercicioClases abstractas java metodos abstract class api ejemplo ejercicio
Clases abstractas java metodos abstract class api ejemplo ejercicio
 
Clases abstractas e interfaces en java
Clases abstractas e interfaces en java Clases abstractas e interfaces en java
Clases abstractas e interfaces en java
 
Explicacion de interface
Explicacion de interfaceExplicacion de interface
Explicacion de interface
 
U8.- Programacion Orientada a objetos II (2).pdf
U8.- Programacion Orientada a objetos II (2).pdfU8.- Programacion Orientada a objetos II (2).pdf
U8.- Programacion Orientada a objetos II (2).pdf
 
Tema5
Tema5Tema5
Tema5
 
17533924.ppt
17533924.ppt17533924.ppt
17533924.ppt
 
Clases abstractas e interfaces
Clases abstractas e interfacesClases abstractas e interfaces
Clases abstractas e interfaces
 
CLASES STRING MATH TIME
CLASES STRING MATH TIMECLASES STRING MATH TIME
CLASES STRING MATH TIME
 
Derivación implícita,
Derivación implícita,Derivación implícita,
Derivación implícita,
 
Documento para el_facilitador_u2
Documento para el_facilitador_u2Documento para el_facilitador_u2
Documento para el_facilitador_u2
 
Programación orientada a objetos
Programación orientada a objetosProgramación orientada a objetos
Programación orientada a objetos
 
String
StringString
String
 
Laboratorio clase abstract
Laboratorio clase abstractLaboratorio clase abstract
Laboratorio clase abstract
 
Clase math.java
Clase math.javaClase math.java
Clase math.java
 
Matematica 1
Matematica 1Matematica 1
Matematica 1
 
4 unidad polimorfismo
4 unidad polimorfismo4 unidad polimorfismo
4 unidad polimorfismo
 
C2 clases en java
C2 clases en javaC2 clases en java
C2 clases en java
 

Último

Proyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfProyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdf
patriciaines1993
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
EliaHernndez7
 
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACIONRESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
amelia poma
 

Último (20)

Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024Tema 17. Biología de los microorganismos 2024
Tema 17. Biología de los microorganismos 2024
 
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN PARÍS. Por JAVIER SOL...
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN  PARÍS. Por JAVIER SOL...ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN  PARÍS. Por JAVIER SOL...
ACERTIJO LA RUTA DEL MARATÓN OLÍMPICO DEL NÚMERO PI EN PARÍS. Por JAVIER SOL...
 
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADOTIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
TIENDAS MASS MINIMARKET ESTUDIO DE MERCADO
 
Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024Prueba libre de Geografía para obtención título Bachillerato - 2024
Prueba libre de Geografía para obtención título Bachillerato - 2024
 
Proyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdfProyecto de aprendizaje dia de la madre MINT.pdf
Proyecto de aprendizaje dia de la madre MINT.pdf
 
Revista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdfRevista Apuntes de Historia. Mayo 2024.pdf
Revista Apuntes de Historia. Mayo 2024.pdf
 
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdfPlan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
Plan-de-la-Patria-2019-2025- TERCER PLAN SOCIALISTA DE LA NACIÓN.pdf
 
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
🦄💫4° SEM32 WORD PLANEACIÓN PROYECTOS DARUKEL 23-24.docx
 
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIASISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
SISTEMA RESPIRATORIO PARA NIÑOS PRIMARIA
 
Factores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdfFactores que intervienen en la Administración por Valores.pdf
Factores que intervienen en la Administración por Valores.pdf
 
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptxCONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
CONCURSO NACIONAL JOSE MARIA ARGUEDAS.pptx
 
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACIONRESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
 
Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024Tema 10. Dinámica y funciones de la Atmosfera 2024
Tema 10. Dinámica y funciones de la Atmosfera 2024
 
Desarrollo y Aplicación de la Administración por Valores
Desarrollo y Aplicación de la Administración por ValoresDesarrollo y Aplicación de la Administración por Valores
Desarrollo y Aplicación de la Administración por Valores
 
Posición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptxPosición astronómica y geográfica de Europa.pptx
Posición astronómica y geográfica de Europa.pptx
 
Sesión de clase APC: Los dos testigos.pdf
Sesión de clase APC: Los dos testigos.pdfSesión de clase APC: Los dos testigos.pdf
Sesión de clase APC: Los dos testigos.pdf
 
PP_Comunicacion en Salud: Objetivación de signos y síntomas
PP_Comunicacion en Salud: Objetivación de signos y síntomasPP_Comunicacion en Salud: Objetivación de signos y síntomas
PP_Comunicacion en Salud: Objetivación de signos y síntomas
 
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...
1ro Programación Anual D.P.C.C planificación anual del área para el desarroll...
 
prostitución en España: una mirada integral!
prostitución en España: una mirada integral!prostitución en España: una mirada integral!
prostitución en España: una mirada integral!
 
Los dos testigos. Testifican de la Verdad
Los dos testigos. Testifican de la VerdadLos dos testigos. Testifican de la Verdad
Los dos testigos. Testifican de la Verdad
 

Alejandro Merizalde

  • 1. Escuela Politécnica del Ejército CLASES ABSTRACTAS E INTERFACES Ing. Paulo Guerra Alejandro Merizalde 19-12-2012
  • 2. CLASE ABSTRACTA Una clase abstracta es aquella que declara la existencia de métodos pero no la implementación de estos; es decir, los métodos simplemente son declarados. Una clase abstracta puede contener métodos no abstractos pero al menos uno de estos debe ser abstracto. Para declarar una clase o método como abstractos, se utiliza la palabra reservada abstract, de la siguiente manera: Una clase abstracta no se puede instanciar (es decir no se pueden volver en objetos) pero si se puede heredar y las clases hijas serán las encargadas de agregar la funcionalidad a los métodos abstractos.
  • 3. Ejemplo: En el siguiente ejemplo tomaremos dos figuras geométricas, el Rectángulo y el Triangulo rectángulo, para el ejemplo sólo consideraremos dos características similares: el ancho y el alto, por lo que podemos crear una clase padre Figura geométrica con estas dos características y sus métodos correspondientes, además del métodos getArea() que devolverá el área de la Figura. Pero, se presenta un problema, el cálculo del área del Rectángulo es diferente al cálculo del área del Triangulo. Area del Rectangulo = ancho X alto Area del Triangulo = (ancho X alto)/2 Por lo tanto, el método getArea() deberá ser abstracto, por lo cual, la clase Figura también deberá ser abstracta.
  • 4. Esta será nuestra clase padre Abstracta, en donde tomaremos los datos ancho y alto: Y Aquí tenemos las clases hijas; una para obtener el área del rectángulo y otra para el área del triángulo:
  • 5. Y finalmente en el main, llamamos a las clases y obtenemos los resultados de las dos áreas:
  • 6. INTERFACE Una interface es una variante de una clase abstracta con la condición de que todos sus métodos deben ser abstractos. Si la interface va a tener atributos, éstos deben llevar las palabras reservadas static final y con un valor inicial ya que funcionan como constantes por lo que, por convención, su nombre va en mayúsculas. interface Nomina { public static final String EMPRESA = "Patito, S. A."; public void detalleDeEmpleado(Nomina obj); } Una clase implementa una o más interfaces con la palabra reservada implements. class Empleado implements Nomina { ... } Esto sirve para simular una herencia múltiple que java no soporta.
  • 7. Ejemplo: En el siguiente ejemplo, tomaremos de ejemplo a los animales. Se sabe que todos los animales emiten un sonido , por ejemplo el perro ladra, el gato maúlla, etc. Entonces se puede crear una interfaz Animal con el método hablar( ). Ahora crearemos una clase Perro y una Gato que implemente la interfaz Animal, en donde obligatoriamente tendremos que implementar el método hablar().
  • 8. Finalmente en el main, llamamos a las clases y utilizamos los métodos creados.