Inv Poo - Teresita Del Carmen Garabita H. 1a - Evnd
Inv Poo - Teresita Del Carmen Garabita H. 1a - Evnd
Inv Poo - Teresita Del Carmen Garabita H. 1a - Evnd
INTRODUCCIÓN..................................................................................................................................1
I. ABSTRACCIÓN...........................................................................................................................2
1.1 Definición.............................................................................................................................2
1.3 Características....................................................................................................................2
1.4 Ejemplo.................................................................................................................................2
II. ENCAPSULAMIENTO.................................................................................................................4
2.1 Definición.............................................................................................................................4
2.2 Características....................................................................................................................4
2.3 Ejemplo.................................................................................................................................4
III. HERENCIA................................................................................................................................5
3.1 Definición.............................................................................................................................5
3.2 Características....................................................................................................................5
3.3 Ejemplo.................................................................................................................................6
IV. POLIMORFISMO......................................................................................................................7
4.1 Definición.............................................................................................................................7
4.2 Características....................................................................................................................7
4.3 Ejemplo.................................................................................................................................7
V. CONCLUSIÓN..............................................................................................................................8
Herencia. La herencia permite crear clases que reutilizan, extienden y modifican el comportamiento
definido en otras clases. La clase cuyos miembros se heredan se denomina clase base y la clase que
hereda esos miembros se denomina clase derivada. Una clase derivada solo puede tener una clase
base directa, pero la herencia es transitiva. Si Class-C se deriva de Class-B y Class-B se deriva
de Class-A, Class-C hereda los miembros declarados en Class-B y
Polimorfismo. Es la capacidad que tienen los objetos de una clase en ofrecer respuesta distinta e
independiente en función de los parámetros (diferentes implementaciones) utilizados durante su
invocación. Dicho de otro modo, el objeto como entidad puede contener valores de diferentes tipos
durante la ejecución del programa.
P á g i n a 1 | 13
I. ABSTRACCIÓN.
I.1 Definición.
Consiste en seleccionar datos de un conjunto más grande para mostrar solo los detalles relevantes del
objeto. La abstracción ayuda a reducir la complejidad y el esfuerzo de programación. En Java, la
abstracción se logra usando clases e interfaces abstractas. La abstracción es importante en la
programación orientada a objetos porque nos permite enfocarnos en los aspectos más importantes de
un problema y ocultar los detalles innecesarios.
I.4 Ejemplo.
P á g i n a 2 | 13
P á g i n a 3 | 13
II. ENCAPSULAMIENTO.
II.1 Definición.
La encapsulación consiste en almacenar y organizar en una clase, las características y
funcionalidades de los objetos representándolas por medio de atributos y métodos2. El
encapsulamiento se refiere a la capacidad de ocultar los detalles internos de un objeto y proporcionar
una interfaz clara y controlada para interactuar con él
II.2 Características.
Protección de datos: Al encapsular los datos, podemos aplicar mecanismos de control de acceso,
como getters y setters, que permiten un acceso controlado a los datos y aseguran su integridad.
Modularidad y mantenibilidad: El encapsulamiento promueve el modularidad del código al
agrupar datos y funciones relacionadas en una sola unidad. Esto facilita el mantenimiento y la
evolución del software, ya que los cambios se pueden realizar en un lugar específico sin afectar
otras partes del programa.
Abstracción y ocultamiento de detalles: Al ocultar los detalles internos de un objeto, el
encapsulamiento permite que otros objetos interactúen con él a través de una interfaz definida.
Esto promueve la abstracción, lo que significa que los usuarios solo necesitan conocer cómo
interactuar con el objeto, sin preocuparse por su implementación interna.
II.3 Ejemplo.
Para comprender mejor el encapsulamiento,
consideremos un ejemplo de una clase
«CuentaBancaria». Esta clase encapsula los
datos relacionados con una cuenta bancaria,
como el saldo y el número de cuenta, y
proporciona métodos para realizar operaciones
como depósitos y retiros.
P á g i n a 4 | 13
III. HERENCIA.
III.1 Definición.
La herencia en la programación orientada a objetos es una forma de organizar los objetos en una
jerarquía desde lo más general hasta lo más específico. Es el artilugio utilizado para extender una
clase en otra clase, conservando una ejecución análoga.
Permite que un objeto herede propiedades y comportamientos de otro objeto y se utiliza ampliamente
en la programación de aplicaciones para crear jerarquías de objetos.
III.2 Características.
Se pueden derivar nuevas clases de las clases base existentes, agregando nuevas características. No
se tiene que escribir desde cero. Por tanto, la herencia proporciona una forma de reutilizar fácilmente
el código existente.
Si ya se tiene una clase que haga casi todo lo que se quiere, se podrá crear una subclase en la que se
anule parcialmente parte de su comportamiento, o quizás se agregue alguna funcionalidad nueva.
III.3 Tipos.
Herencia jerárquica
Herencia única
Herencia multinivel
Herencia hibrida
Herencia múltiple
Desde una clase base:
Herencia publica
Herencia protegida
Herencia privada
P á g i n a 5 | 13
III.4 Ejemplo.
Ejemplo en Python:
Para mostrar cómo funciona el principio de herencia se tomarán unos robots o una mejor clase de
robots en el lenguaje de programación Python. Para ello se especificará una clase llamada
RobotMédico (PhysicianRobot), que se deriva de la superclase Robot.
P á g i n a 6 | 13
IV. POLIMORFISMO.
IV.1 Definición.
Polimorfismo (en POO) es la capacidad que tienen ciertos lenguajes para hacer que, al enviar el
mismo mensaje (o, en otras palabras, invocar al mismo método) desde distintos objetos, cada uno de
esos objetos pueda responder a ese mensaje (o a esa invocación) de forma distinta.
IV.2 Características.
Flexibilidad: El polimorfismo nos permite escribir código más flexible, ya que podemos interactuar
con objetos de diferentes clases utilizando una misma interfaz. Esto significa que podemos crear
funciones y métodos genéricos que funcionen con diferentes tipos de objetos.
Reutilización de código: Al utilizar el polimorfismo, podemos reutilizar el mismo código para
diferentes tipos de objetos. Esto significa que no tenemos que escribir funciones y métodos
específicos para cada clase, lo que nos ahorra tiempo y esfuerzo.
Mantenibilidad: El polimorfismo nos ayuda a mantener nuestro código más organizado y legible.
Al utilizar una interfaz común para interactuar con diferentes objetos, es más fácil entender cómo
interactúan los diferentes componentes de nuestro programa.
IV.3 Ejemplo.
P á g i n a 7 | 13
V. CONCLUSIÓN.
Ciertamente se puede considerar familiar el uso de clases, métodos y atributos, se puede relacionar
estrechamente a como experimentamos las cosas en la vida cotidiana y como las identificamos, esta
relación nos permitirá diseñar mejor y tener una vista mas clara de la programación aun cuando se
vuelve más complejo de entender.
P á g i n a 8 | 13
VI. FUENTES DE CONSULTA.
https://developer.mozilla.org/es/docs/Glossary/Abstraction
programacion-orientada-a-objetos/
IfgeekthenNTTdata. https://ifgeekthen.nttdata.com/es/herencia-en-programacion-
orientada-objetos
es/dotnet/csharp/fundamentals/object-oriented/inheritance
IfgeekthenNTTdata. https://ifgeekthen.nttdata.com/es/polimorfismo-en-java-programaci
%C3%B3n-orientada-objetos
https://elblogpython.com/tecnologia/aprende-a-usar-la-herencia-en-la-programacion-
orientada-a-objetos/#:~:text=La%20herencia%20se%20utiliza%20en%20la
P á g i n a 9 | 13
%20programaci%C3%B3n%20orientada,Crear%20clases%20especializadas%20con
%20caracter%C3%ADsticas%20comunes%20y%20%C3%BAnicas.
https://elblogpython.com/tecnologia/polimorfismo-flexibilidad-y-reutilizacion-de-
codigo-en-la-poo/#:~:text=Polimorfismo%3A%20flexibilidad%20y%20reutilizaci
%C3%B3n%20de%20c%C3%B3digo%20en%20la,...%203%20Conclusi%C3%B3n
%20...%204%20Preguntas%20frecuentes%20
Juventino Avila Ramos, & Jonathan Bailón Segura. (2022, January 11). Clases y objetos.
y-diseno-en-poo/clases-y-objetos
de-la-programacion-orientada-a-objetos-atributos-y-metodos/#:~:text=Para%20resumir
%2C%20hemos%20aprendido%20que%3A%201%20Los%20atributos,sus%20propias
%20acciones%20a%20trav%C3%A9s%20de%20sus%20m%C3%A9todos.
ejemplos/#:~:text=Ejemplos%20de%20abstracci%C3%B3n%20en%20programaci
%C3%B3n%201%20Interfaces%20Las,en%20programaci%C3%B3n.
%20...%203%20Funciones%20y%20m%C3%A9todos%20
P á g i n a 11 | 13