SlideShare una empresa de Scribd logo
1 de 14
Unidad II:
Programación Orientada a Objetos (POO)
Programación Orientada a Objetos:
Es un paradigma de programación que ha innovado la forma de obtener resultados. Los
objetos manipulan los datos de entrada para la obtención de datos de salida específicos,
donde cada objeto ofrece una funcionalidad especial.
Paradigma: Modelo, ejemplo o patrón. Se puede definir como conjunto de creencias,
prácticas y conocimientos que guían el desarrollo de una disciplina durante un período de
tiempo.
Paradigma de programación: Es un estilo de desarrollo de programas, es decir, un modelo
para resolver problemas computacionales
Principales paradigmas de programación
Imperativo: Secuencias de comandos que ordenan acciones a la computadora.
Declarativo: Opuesto al imperativo, describen los resultados esperados sin listar los pasos
a llevar a cabo para alcanzarlos.
Lógico: El problema se modela con enunciados de lógica de primer orden. Paradigma:
Modelo, ejemplo o patrón. Se puede definir como conjunto de creencias, prácticas y
conocimientos que guían el desarrollo de una disciplina durante un período de tiempo.
Funcional: Se componen de funciones, es decir, implementaciones de comportamiento que
reciben un conjunto de datos de entrada y devuelven un valor de salida.
Orientado a objetos: El comportamiento del programa es llevado a cabo por objetos,
entidades que representan elementos del problema a resolver y tienen atributos y
comportamiento
Características de la POO (Objetos = base del paradigma)
Propiedades: Son las características de los objetos que son: las variables donde se almacenan los
datos relacionados a los objetos.
Métodos: Son las funcionalidades asociadas a los objetos
Estados de los objetos: Son los posibles valores que toman las propiedades de los objetos.
Mensajes en objetos: Es la acción que se efectúa con la llamada a un método o función
Principios de la POO:
Para disfrutar de las bondades y de todas las características que nos brindan la POO de una
manera eficiente son necesarios algunos principios que nos ayudarán a reducir la
complejidad, ser más eficientes y evitar problemas. Estos son los principios o pilares
fundamentales de la POO, estos son:
1. Herencia
2. Polimorfismo
3. Abstracción
4. Encapsulamiento
Herencia:
Es una forma de reutilización de software en la que se crea una nueva clase absorbiendo
los miembros de una clase existente, y se mejoran con nuevas capacidades, o con
modificaciones en las capacidades ya existentes.
Con la herencia, los programadores ahorran tiempo durante el desarrollo, al reutilizar
software probado y depurado de alta calidad. Esto también aumenta la probabilidad de
que un sistema se implemente con efectividad.
Al crear una clase, en vez de declarar miembros completamente nuevo, el programador
puede designar que la nueva clase herede los miembros de una clase existente.
Esta clase existente se conoce como superclase, y la nueva clase se conoce como subclase.
Cada subclase puede convertirse en la superclase de futuras subclases.
Una subclase generalmente agrega sus propios campos y métodos/funciones. Por lo tanto,
una subclase es mas específica que su superclase y representa a un grupo más
especializado de objetos.
Generalmente, la subclase exhibe los comportamientos de su superclase junto con
comportamientos adicionales específicos de esta subclase. Es por ello que a la herencia se
le conoce algunas veces como especialización.
En el caso de la herencia simple, una clase se deriva de una clase superclase directa. Java a
diferencia de C++ no permite la herencia multiple.
Superclases y sublcases:
Un objeto de una clase “es un” objeto de otra clase también. Las súper clases tienden a ser
“más generales” y las subclases “más específicas”.
Un problema con la herencia es que una subclase puede heredar métodos que no necesita,
o que no debe tener. A pesar de que un método de superclase sea apropiado para una
subclase, a menudo una subclase requiere una versión personalizada del método.
En dichos casos, la subclase puede sobreescribir (redefinir) el método de la superclase con
una implementación apropiada.
Figura
Figura
bidimensional
Figura
Tridimensional
Círculo Cuadrado Triangulo Esfera Cubo Tetraedro
Ejercicio:
• Una compañía editorial produce tanto libros impresos como audio-
libros en discos compactos. Diseñe una clase denominada Publicación
que almacene el título (cadena) y el precio (numérico real) de una
publicación. A partir de esta clase, derive dos clases: Libro a la cual le
agregue el número de páginas (entero) y CD, a la cual le agregue el
tiempo de reproducción en minutos (numérico real). Cada una de las
clases debe tener propiedades para acceder a sus respectivos datos.
• Desarrolle un programa en el cuál exista una clase figura y
adicionalmente tres clases: Figura, cubo, cilindro. Cree un método
común que le permita calcular el volumen de cada una de las figuras
antes mencionadas.
• Una agencia vendedora de autos desea un sistema computacional para
administrar los datos de sus vehículos y clasificarlos por tipo. Todos los
autos tienen los siguientes datos:
Número de serie del motor.
Marca.
Año.
Precio.
Los vehículos se clasifican en autos compactos, autos de lujo, camionetas y
vagonetas. Para los autos y vagonetas, también es importante almacenar la
cantidad de pasajeros; mientras que para las camionetas se debe controlar la
capacidad de carga en kgs. y la cantidad de ejes y de rodadas.
Instancie cada una de las clases, asignándole datos mediante sus respectivas
propiedades. Agregue un constructor con parámetros a cada clase para
inicializar sus datos e invoque el constructor de la clase base desde el
constructor de cada clase derivada (no utilice constructores default).
Implemente la sobrescritura del método ToString() para mostrar los datos de
cada tipo de auto.
Miembros protected:
A diferencia de los miembros public de una clase que son accesibles en cualquier parte en
donde el programa tenga una referencia a un objeto de esa clase o una de sus sublcases.
Los miembros private de una clase son accesibles sólo dentro de la misma clase.
Por el contrario los métodos protected ofrecen un nivel intermedio de acceso entre public
y private. Los miembros de una clase de tipo protected pueden ser utilizados por los
miembros de esa superclase, por los miembros de sus subclases y por miembros de otras
clases en el mismo paquete.
Todos los miembros public y protected de una superclase retienen su modificador de
acceso original cuando se convierten en miembros de la subclase.
La palabra clave extends de la declaración de la clase indica herencia en Java.
Sintaxis de llamada al constructor de la superclase: con la palabra clave super, seguida de
un conjunto de paréntesis que contienen los argumentos del constructor de la superclase.

Más contenido relacionado

La actualidad más candente

Fundamentos de Java
Fundamentos de JavaFundamentos de Java
Fundamentos de Javamartosfre
 
Programación Orientada a Objetos en Java - Parte I 2015
Programación Orientada a Objetos en Java - Parte I 2015Programación Orientada a Objetos en Java - Parte I 2015
Programación Orientada a Objetos en Java - Parte I 2015Renny Batista
 
Metodología de la programación orientada a objetos con c++ prev
Metodología de la programación orientada a objetos con c++ prevMetodología de la programación orientada a objetos con c++ prev
Metodología de la programación orientada a objetos con c++ prevjtk1
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetosale8819
 
U.T. 3.- Programación Orientada a Objetos. Programación JAVA
U.T. 3.- Programación Orientada a Objetos. Programación JAVAU.T. 3.- Programación Orientada a Objetos. Programación JAVA
U.T. 3.- Programación Orientada a Objetos. Programación JAVAiessanjuanbosco
 
10. programación orientada a objetos (java)
10. programación orientada a objetos (java)10. programación orientada a objetos (java)
10. programación orientada a objetos (java)Eric Martinez Aguilar
 
Conceptos poo progra visual
Conceptos poo progra visualConceptos poo progra visual
Conceptos poo progra visualLibertad25
 

La actualidad más candente (20)

Tema2
Tema2Tema2
Tema2
 
Fundamentos de Java
Fundamentos de JavaFundamentos de Java
Fundamentos de Java
 
Programación Orientada a Objetos en Java - Parte I 2015
Programación Orientada a Objetos en Java - Parte I 2015Programación Orientada a Objetos en Java - Parte I 2015
Programación Orientada a Objetos en Java - Parte I 2015
 
Aprendiendo objetos en c++
Aprendiendo objetos en c++Aprendiendo objetos en c++
Aprendiendo objetos en c++
 
Conceptos poo (presentación1)
Conceptos poo (presentación1)Conceptos poo (presentación1)
Conceptos poo (presentación1)
 
Metodología de la programación orientada a objetos con c++ prev
Metodología de la programación orientada a objetos con c++ prevMetodología de la programación orientada a objetos con c++ prev
Metodología de la programación orientada a objetos con c++ prev
 
programacion orientada a objetos
programacion orientada a objetosprogramacion orientada a objetos
programacion orientada a objetos
 
Poo ok
Poo okPoo ok
Poo ok
 
PROGRAMACIÓN ORIENTADA A OBJETOS
PROGRAMACIÓN ORIENTADA A OBJETOSPROGRAMACIÓN ORIENTADA A OBJETOS
PROGRAMACIÓN ORIENTADA A OBJETOS
 
U.T. 3.- Programación Orientada a Objetos. Programación JAVA
U.T. 3.- Programación Orientada a Objetos. Programación JAVAU.T. 3.- Programación Orientada a Objetos. Programación JAVA
U.T. 3.- Programación Orientada a Objetos. Programación JAVA
 
10. programación orientada a objetos (java)
10. programación orientada a objetos (java)10. programación orientada a objetos (java)
10. programación orientada a objetos (java)
 
05 Creando Clases
05   Creando Clases05   Creando Clases
05 Creando Clases
 
Conceptos poo progra visual
Conceptos poo progra visualConceptos poo progra visual
Conceptos poo progra visual
 
Clases y Objetos
Clases y ObjetosClases y Objetos
Clases y Objetos
 
Programacion orientada a objetos Java
Programacion orientada a objetos JavaProgramacion orientada a objetos Java
Programacion orientada a objetos Java
 
POO
POOPOO
POO
 
Qué es la poo
Qué es la pooQué es la poo
Qué es la poo
 
Unidad 2 clases y objetos
Unidad 2 clases y objetosUnidad 2 clases y objetos
Unidad 2 clases y objetos
 
P.O.O.
P.O.O.P.O.O.
P.O.O.
 
JAVA ORIENTADO A OBJETOS - INTRODUCCIÓN
JAVA ORIENTADO A OBJETOS - INTRODUCCIÓNJAVA ORIENTADO A OBJETOS - INTRODUCCIÓN
JAVA ORIENTADO A OBJETOS - INTRODUCCIÓN
 

Similar a Unidad II_1.pptx

Similar a Unidad II_1.pptx (20)

Jyoc java-cap08 principios poo
Jyoc java-cap08 principios pooJyoc java-cap08 principios poo
Jyoc java-cap08 principios poo
 
Framework .NET 3.5 07 Programación orientada a objetos
Framework .NET 3.5 07 Programación orientada a objetosFramework .NET 3.5 07 Programación orientada a objetos
Framework .NET 3.5 07 Programación orientada a objetos
 
Unidad i poo avanzada
Unidad i   poo avanzadaUnidad i   poo avanzada
Unidad i poo avanzada
 
Conceptos basicos POO
Conceptos basicos POOConceptos basicos POO
Conceptos basicos POO
 
Programacion Orientada a Objetos IE
Programacion Orientada a Objetos IEProgramacion Orientada a Objetos IE
Programacion Orientada a Objetos IE
 
Historia java ruben
Historia java rubenHistoria java ruben
Historia java ruben
 
JAVA 00 - TEMA 05 - HERENCIA
JAVA 00 - TEMA 05 - HERENCIAJAVA 00 - TEMA 05 - HERENCIA
JAVA 00 - TEMA 05 - HERENCIA
 
Historia java ruben rodriguez
Historia java ruben rodriguezHistoria java ruben rodriguez
Historia java ruben rodriguez
 
Lenguaje de programacion unidad 2 clases y objetos
Lenguaje de programacion unidad 2 clases y objetosLenguaje de programacion unidad 2 clases y objetos
Lenguaje de programacion unidad 2 clases y objetos
 
Conceptos poo
Conceptos pooConceptos poo
Conceptos poo
 
Programación Orientada a Objetos - Unidad 2: clases y objetos
Programación Orientada a Objetos - Unidad 2: clases y objetosProgramación Orientada a Objetos - Unidad 2: clases y objetos
Programación Orientada a Objetos - Unidad 2: clases y objetos
 
Definiciones taller 8 agost
Definiciones taller 8 agostDefiniciones taller 8 agost
Definiciones taller 8 agost
 
Modelo informático
Modelo informáticoModelo informático
Modelo informático
 
Programación orientada a objetos con c++
Programación orientada a objetos con c++Programación orientada a objetos con c++
Programación orientada a objetos con c++
 
Mapa conceptual
Mapa conceptual Mapa conceptual
Mapa conceptual
 
PresentacióN1
PresentacióN1PresentacióN1
PresentacióN1
 
Lp pract2006
Lp pract2006Lp pract2006
Lp pract2006
 
Guia3 java
Guia3 javaGuia3 java
Guia3 java
 
manual de C#
manual de C#manual de C#
manual de C#
 
Manual c# 2
Manual c# 2Manual c# 2
Manual c# 2
 

Último

trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersIván López Martín
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxJOSEMANUELHERNANDEZH11
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...FacuMeza2
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...AlanCedillo9
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 

Último (19)

trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptx
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 

Unidad II_1.pptx

  • 2. Programación Orientada a Objetos: Es un paradigma de programación que ha innovado la forma de obtener resultados. Los objetos manipulan los datos de entrada para la obtención de datos de salida específicos, donde cada objeto ofrece una funcionalidad especial. Paradigma: Modelo, ejemplo o patrón. Se puede definir como conjunto de creencias, prácticas y conocimientos que guían el desarrollo de una disciplina durante un período de tiempo. Paradigma de programación: Es un estilo de desarrollo de programas, es decir, un modelo para resolver problemas computacionales
  • 3. Principales paradigmas de programación Imperativo: Secuencias de comandos que ordenan acciones a la computadora. Declarativo: Opuesto al imperativo, describen los resultados esperados sin listar los pasos a llevar a cabo para alcanzarlos. Lógico: El problema se modela con enunciados de lógica de primer orden. Paradigma: Modelo, ejemplo o patrón. Se puede definir como conjunto de creencias, prácticas y conocimientos que guían el desarrollo de una disciplina durante un período de tiempo.
  • 4. Funcional: Se componen de funciones, es decir, implementaciones de comportamiento que reciben un conjunto de datos de entrada y devuelven un valor de salida. Orientado a objetos: El comportamiento del programa es llevado a cabo por objetos, entidades que representan elementos del problema a resolver y tienen atributos y comportamiento
  • 5. Características de la POO (Objetos = base del paradigma) Propiedades: Son las características de los objetos que son: las variables donde se almacenan los datos relacionados a los objetos. Métodos: Son las funcionalidades asociadas a los objetos Estados de los objetos: Son los posibles valores que toman las propiedades de los objetos. Mensajes en objetos: Es la acción que se efectúa con la llamada a un método o función
  • 6. Principios de la POO: Para disfrutar de las bondades y de todas las características que nos brindan la POO de una manera eficiente son necesarios algunos principios que nos ayudarán a reducir la complejidad, ser más eficientes y evitar problemas. Estos son los principios o pilares fundamentales de la POO, estos son: 1. Herencia 2. Polimorfismo 3. Abstracción 4. Encapsulamiento
  • 7. Herencia: Es una forma de reutilización de software en la que se crea una nueva clase absorbiendo los miembros de una clase existente, y se mejoran con nuevas capacidades, o con modificaciones en las capacidades ya existentes. Con la herencia, los programadores ahorran tiempo durante el desarrollo, al reutilizar software probado y depurado de alta calidad. Esto también aumenta la probabilidad de que un sistema se implemente con efectividad.
  • 8. Al crear una clase, en vez de declarar miembros completamente nuevo, el programador puede designar que la nueva clase herede los miembros de una clase existente. Esta clase existente se conoce como superclase, y la nueva clase se conoce como subclase. Cada subclase puede convertirse en la superclase de futuras subclases. Una subclase generalmente agrega sus propios campos y métodos/funciones. Por lo tanto, una subclase es mas específica que su superclase y representa a un grupo más especializado de objetos. Generalmente, la subclase exhibe los comportamientos de su superclase junto con comportamientos adicionales específicos de esta subclase. Es por ello que a la herencia se le conoce algunas veces como especialización.
  • 9. En el caso de la herencia simple, una clase se deriva de una clase superclase directa. Java a diferencia de C++ no permite la herencia multiple. Superclases y sublcases: Un objeto de una clase “es un” objeto de otra clase también. Las súper clases tienden a ser “más generales” y las subclases “más específicas”. Un problema con la herencia es que una subclase puede heredar métodos que no necesita, o que no debe tener. A pesar de que un método de superclase sea apropiado para una subclase, a menudo una subclase requiere una versión personalizada del método. En dichos casos, la subclase puede sobreescribir (redefinir) el método de la superclase con una implementación apropiada.
  • 11. Ejercicio: • Una compañía editorial produce tanto libros impresos como audio- libros en discos compactos. Diseñe una clase denominada Publicación que almacene el título (cadena) y el precio (numérico real) de una publicación. A partir de esta clase, derive dos clases: Libro a la cual le agregue el número de páginas (entero) y CD, a la cual le agregue el tiempo de reproducción en minutos (numérico real). Cada una de las clases debe tener propiedades para acceder a sus respectivos datos. • Desarrolle un programa en el cuál exista una clase figura y adicionalmente tres clases: Figura, cubo, cilindro. Cree un método común que le permita calcular el volumen de cada una de las figuras antes mencionadas.
  • 12. • Una agencia vendedora de autos desea un sistema computacional para administrar los datos de sus vehículos y clasificarlos por tipo. Todos los autos tienen los siguientes datos: Número de serie del motor. Marca. Año. Precio. Los vehículos se clasifican en autos compactos, autos de lujo, camionetas y vagonetas. Para los autos y vagonetas, también es importante almacenar la cantidad de pasajeros; mientras que para las camionetas se debe controlar la capacidad de carga en kgs. y la cantidad de ejes y de rodadas. Instancie cada una de las clases, asignándole datos mediante sus respectivas propiedades. Agregue un constructor con parámetros a cada clase para inicializar sus datos e invoque el constructor de la clase base desde el constructor de cada clase derivada (no utilice constructores default). Implemente la sobrescritura del método ToString() para mostrar los datos de cada tipo de auto.
  • 13. Miembros protected: A diferencia de los miembros public de una clase que son accesibles en cualquier parte en donde el programa tenga una referencia a un objeto de esa clase o una de sus sublcases. Los miembros private de una clase son accesibles sólo dentro de la misma clase. Por el contrario los métodos protected ofrecen un nivel intermedio de acceso entre public y private. Los miembros de una clase de tipo protected pueden ser utilizados por los miembros de esa superclase, por los miembros de sus subclases y por miembros de otras clases en el mismo paquete.
  • 14. Todos los miembros public y protected de una superclase retienen su modificador de acceso original cuando se convierten en miembros de la subclase. La palabra clave extends de la declaración de la clase indica herencia en Java. Sintaxis de llamada al constructor de la superclase: con la palabra clave super, seguida de un conjunto de paréntesis que contienen los argumentos del constructor de la superclase.