SlideShare una empresa de Scribd logo
1 de 8
Descargar para leer sin conexión
Desarrollo de Funciones en el Sistema Informático
                                                       Curso 2009/2010




Programación orientada a objetos (y II)
       Presentación en diapositivas (PRE10)
Desarrollo de Funciones en el Sistema Informático
                                                                  Curso 2009/2010



             Herencia y polimorfismo
Ambas propiedades son esenciales en la POO

Comentaremos únicamente las diferencias respecto a C++, que son:
●
    Referencias this y super
●   Clase Object
●
    Polimorfismo
●
    Paquetes
●   La API


¡¡IMPORTANTE!!
Las clases y métodos abstractos, las clases y métodos finales y las
  interfaces están fuera de los objetivos de este módulo.
Desarrollo de Funciones en el Sistema Informático
                                                                                                    Curso 2009/2010



                 Las referencias this y super
Java permite el acceso a atributos/métodos del propio objeto → this
Ejemplo:
class Alumno() {
                                                                     String nombre;
 String nombre;
 GregorianCalendar fechaNacimiento;
 boolean ocupado;
                                                                     GregorianCalendar fechaNacimiento;
    int calculaEdad() {
          GregorianCalendar hoy = new GregorianCalendar();
                                                                     boolean ocupado;
          hoy.getTime();
                                                                                                                 this.fechaNacimiento
          return (this.fechaNacimiento – hoy)
       }                                                                                                                      Métodos
}                                                                                                Atributos
                                                                                                                  Clase Alumno
Java permite el acceso a atributos/métodos del objeto de la superclase → super
Ejemplo:
class Alumno() {
  int calculaEdad() { ... }
}
                                                             ...                                                             ...
class AlumnoCiclos extends Alumno() {                                                   hereda
  int calculaEdad() { super.calculaEdad(); }         Atributos                                                           Atributos
}                                                                     calculaEdad()                    super.calculaEdad()
                                                                          Métodos                      Métodos
                                                                     Clase Alumno                         Clase AlumnoCiclos
Desarrollo de Funciones en el Sistema Informático
                                                                      Curso 2009/2010



                    La clase Object
                                Clase Object
                   Métodos                            Explicación
+equals (Object obj): boolean                 Compara el contenido de 2 objetos

#Clone(): Object                              Retorna una copia del objeto




                                   hereda




                                resto de clases
Desarrollo de Funciones en el Sistema Informático
                                                                                   Curso 2009/2010



                                   Polimorfismo
Capacidad de una variable de poder tomar varias formas.
Ejemplo:

                                              hereda




                               Clase Alumno                 Clase AlumnoCiclos



En este caso, podríamos hacer:
Alumno alumnoUno = new Alumno();

Alumno alumnoDos = new Alumno();
Desarrollo de Funciones en el Sistema Informático
                                                                                            Curso 2009/2010



                                           Paquetes
●   Es la forma en la que Java organiza las clases.
●   Las clases de un mismo paquete tienen alguna relación entre ellas.
●   Ejemplos:
     ●    java.lang. Incluye clases fundamentales.
     ●    java.io. Tiene clases para gestionar la e/s.
Definición de paquetes
package nombrePaquete;         // Si no se define, se incluye en default package


Acceso a una clase
●   Nombre completo: nombrePaquete.nombreClase
●   Mediante import:
     1.   import nombrePaquete.nombreClase; // importa sólo la clase                por convención, java.lang
                                                                                     se importa por defecto
     2.   Import nombrePaquete.*               // importa todo el paquete
Desarrollo de Funciones en el Sistema Informático
                                                                                  Curso 2009/2010



                                         La API
Biblioteca con funciones organizadas en paquetes. Las principales son:

  Paquete                                      Clases incorporadas
java.lang     Clases fundamentales para el lenguaje, como la clase String y otras.
java.io       Clases para entrada y salida a través de flujos de datos y ficheros del sistema.
java.util     Clases de utilidad, como colecciones de datos y clases o facilidades horarias.
java.math     Clase que agrupa todas las funciones matemáticas.
java.applet   Clase con utilidades para crear applets y clases que los applets necesitan para
              comunicarse con su contexto.
java.awt      Clases que permiten la creación de interfaces gráficas con el usuario.
java.swing    Clases con componentes gráficos que funcionan igual en todas las plataformas Java.
java.security Clases responsables de la seguridad en Java (encriptación, etc.).

java.net      Clases con funciones para aplicaciones en red.
java.sql      Clase que incorpora el JDBC para la conexión de Java con bases de datos.
Desarrollo de Funciones en el Sistema Informático
                                                                                                                          Curso 2009/2010




         Programación orientada a objetos (y II)
                                           Presentación en diapositivas (PRE10)




                   Esta obra de Cristian Jorge Garcia Marcos está bajo una licencia Reconocimiento-Compartir bajo la misma licencia 3.0 España de Creative Commons.
                   Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-sa/3.0/es/ o envíe una carta a Creative Commons, 171
                   SecondStreet, Suite 300, San Francisco, California 94105, USA



Basado en el documento:
López, J. A. P., Xirgo, L. R. (2008, February 18). Introducción al desarrollo de software. Retrieved February 25, 2010, from UOCOpenCourseWare Web site: http://ocw.uoc.edu/informatica-
tecnologia-y-multimedia/introduccion-al-desarrollo-de-software, publicado bajo una licencia GNU Free Document License.

Más contenido relacionado

Último

Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
Fernando Solis
 
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
 
6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria
Wilian24
 
🦄💫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
 

Último (20)

Concepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptxConcepto y definición de tipos de Datos Abstractos en c++.pptx
Concepto y definición de tipos de Datos Abstractos en c++.pptx
 
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
 
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACIONRESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
RESOLUCIÓN VICEMINISTERIAL 00048 - 2024 EVALUACION
 
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
 
Supuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docxSupuestos_prácticos_funciones.docx
Supuestos_prácticos_funciones.docx
 
Actividades para el 11 de Mayo día del himno.docx
Actividades para el 11 de Mayo día del himno.docxActividades para el 11 de Mayo día del himno.docx
Actividades para el 11 de Mayo día del himno.docx
 
TRABAJO FINAL TOPOGRAFÍA COMPLETO DE LA UPC
TRABAJO FINAL TOPOGRAFÍA COMPLETO DE LA UPCTRABAJO FINAL TOPOGRAFÍA COMPLETO DE LA UPC
TRABAJO FINAL TOPOGRAFÍA COMPLETO DE LA UPC
 
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
 
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
 
6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria6°_GRADO_-_MAYO_06 para sexto grado de primaria
6°_GRADO_-_MAYO_06 para sexto grado de primaria
 
Usos y desusos de la inteligencia artificial en revistas científicas
Usos y desusos de la inteligencia artificial en revistas científicasUsos y desusos de la inteligencia artificial en revistas científicas
Usos y desusos de la inteligencia artificial en revistas científicas
 
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
 
Louis Jean François Lagrenée. Erotismo y sensualidad. El erotismo en la Hist...
Louis Jean François Lagrenée.  Erotismo y sensualidad. El erotismo en la Hist...Louis Jean François Lagrenée.  Erotismo y sensualidad. El erotismo en la Hist...
Louis Jean François Lagrenée. Erotismo y sensualidad. El erotismo en la Hist...
 
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptxLA LITERATURA DEL BARROCO 2023-2024pptx.pptx
LA LITERATURA DEL BARROCO 2023-2024pptx.pptx
 
FICHA PROYECTO COIL- GLOBAL CLASSROOM.docx.pdf
FICHA PROYECTO COIL- GLOBAL CLASSROOM.docx.pdfFICHA PROYECTO COIL- GLOBAL CLASSROOM.docx.pdf
FICHA PROYECTO COIL- GLOBAL CLASSROOM.docx.pdf
 
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
 
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
 
Los avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtualesLos avatares para el juego dramático en entornos virtuales
Los avatares para el juego dramático en entornos virtuales
 
Tema 11. Dinámica de la hidrosfera 2024
Tema 11.  Dinámica de la hidrosfera 2024Tema 11.  Dinámica de la hidrosfera 2024
Tema 11. Dinámica de la hidrosfera 2024
 
🦄💫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
 

Destacado

How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
ThinkNow
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
Kurio // The Social Media Age(ncy)
 

Destacado (20)

Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 

Programación orientada a objetos (y II)

  • 1. Desarrollo de Funciones en el Sistema Informático Curso 2009/2010 Programación orientada a objetos (y II) Presentación en diapositivas (PRE10)
  • 2. Desarrollo de Funciones en el Sistema Informático Curso 2009/2010 Herencia y polimorfismo Ambas propiedades son esenciales en la POO Comentaremos únicamente las diferencias respecto a C++, que son: ● Referencias this y super ● Clase Object ● Polimorfismo ● Paquetes ● La API ¡¡IMPORTANTE!! Las clases y métodos abstractos, las clases y métodos finales y las interfaces están fuera de los objetivos de este módulo.
  • 3. Desarrollo de Funciones en el Sistema Informático Curso 2009/2010 Las referencias this y super Java permite el acceso a atributos/métodos del propio objeto → this Ejemplo: class Alumno() { String nombre; String nombre; GregorianCalendar fechaNacimiento; boolean ocupado; GregorianCalendar fechaNacimiento; int calculaEdad() { GregorianCalendar hoy = new GregorianCalendar(); boolean ocupado; hoy.getTime(); this.fechaNacimiento return (this.fechaNacimiento – hoy) } Métodos } Atributos Clase Alumno Java permite el acceso a atributos/métodos del objeto de la superclase → super Ejemplo: class Alumno() { int calculaEdad() { ... } } ... ... class AlumnoCiclos extends Alumno() { hereda int calculaEdad() { super.calculaEdad(); } Atributos Atributos } calculaEdad() super.calculaEdad() Métodos Métodos Clase Alumno Clase AlumnoCiclos
  • 4. Desarrollo de Funciones en el Sistema Informático Curso 2009/2010 La clase Object Clase Object Métodos Explicación +equals (Object obj): boolean Compara el contenido de 2 objetos #Clone(): Object Retorna una copia del objeto hereda resto de clases
  • 5. Desarrollo de Funciones en el Sistema Informático Curso 2009/2010 Polimorfismo Capacidad de una variable de poder tomar varias formas. Ejemplo: hereda Clase Alumno Clase AlumnoCiclos En este caso, podríamos hacer: Alumno alumnoUno = new Alumno(); Alumno alumnoDos = new Alumno();
  • 6. Desarrollo de Funciones en el Sistema Informático Curso 2009/2010 Paquetes ● Es la forma en la que Java organiza las clases. ● Las clases de un mismo paquete tienen alguna relación entre ellas. ● Ejemplos: ● java.lang. Incluye clases fundamentales. ● java.io. Tiene clases para gestionar la e/s. Definición de paquetes package nombrePaquete; // Si no se define, se incluye en default package Acceso a una clase ● Nombre completo: nombrePaquete.nombreClase ● Mediante import: 1. import nombrePaquete.nombreClase; // importa sólo la clase por convención, java.lang se importa por defecto 2. Import nombrePaquete.* // importa todo el paquete
  • 7. Desarrollo de Funciones en el Sistema Informático Curso 2009/2010 La API Biblioteca con funciones organizadas en paquetes. Las principales son: Paquete Clases incorporadas java.lang Clases fundamentales para el lenguaje, como la clase String y otras. java.io Clases para entrada y salida a través de flujos de datos y ficheros del sistema. java.util Clases de utilidad, como colecciones de datos y clases o facilidades horarias. java.math Clase que agrupa todas las funciones matemáticas. java.applet Clase con utilidades para crear applets y clases que los applets necesitan para comunicarse con su contexto. java.awt Clases que permiten la creación de interfaces gráficas con el usuario. java.swing Clases con componentes gráficos que funcionan igual en todas las plataformas Java. java.security Clases responsables de la seguridad en Java (encriptación, etc.). java.net Clases con funciones para aplicaciones en red. java.sql Clase que incorpora el JDBC para la conexión de Java con bases de datos.
  • 8. Desarrollo de Funciones en el Sistema Informático Curso 2009/2010 Programación orientada a objetos (y II) Presentación en diapositivas (PRE10) Esta obra de Cristian Jorge Garcia Marcos está bajo una licencia Reconocimiento-Compartir bajo la misma licencia 3.0 España de Creative Commons. Para ver una copia de esta licencia, visite http://creativecommons.org/licenses/by-sa/3.0/es/ o envíe una carta a Creative Commons, 171 SecondStreet, Suite 300, San Francisco, California 94105, USA Basado en el documento: López, J. A. P., Xirgo, L. R. (2008, February 18). Introducción al desarrollo de software. Retrieved February 25, 2010, from UOCOpenCourseWare Web site: http://ocw.uoc.edu/informatica- tecnologia-y-multimedia/introduccion-al-desarrollo-de-software, publicado bajo una licencia GNU Free Document License.