POO en Python
POO en Python
Clase 7
Contenido
● Introducción a la POO
○ Clases y objetos
● Encapsulamiento
● Herencia simple y múltiple
UNIVERSIDAD NACIONAL DE ASUNCIÓN | FACULTAD POLITÉCNICA
Clase 7 - POO
POO
La programación orientada a objetos es uno de los enfoques más efectivos
para escribir software, usted escribe clases que representan cosas y
situaciones del mundo real y a partir de estos crea objetos basados en estas
clases. Cuando escribe una clase, define el comportamiento general que
puede tener una categoría completa de objetos.
UNIVERSIDAD NACIONAL DE ASUNCIÓN | FACULTAD POLITÉCNICA
Clase 7 - POO
Clase
Una clase es la descripción de un conjunto de objetos. Consta de métodos y atributos
que resumen las características y comportamientos comunes de un conjunto de
objetos.
Los nombres de las clases no pueden empezar con un número o signo de puntuación,
tampoco puede llamarse como una palabra reservada del lenguaje.
Clase 7 - POO
Partes de una clase
Atributos: Son las características que se definen para cada objeto.
Métodos: las tareas que son capaces de realizar estos objetos.
UNIVERSIDAD NACIONAL DE ASUNCIÓN | FACULTAD POLITÉCNICA
Clase 7 - POO
Métodos
Una función que forma parte de una clase es un método. Todo lo que aprendió sobre
las funciones se aplica también a los métodos; La única diferencia práctica por ahora
es la forma en que llamaremos a los métodos..
UNIVERSIDAD NACIONAL DE ASUNCIÓN | FACULTAD POLITÉCNICA
Clase 7 - POO
Método __init __ ()
El método __init __ () es un método especial que Python ejecuta automáticamente
cada vez que creamos una nueva instancia basada en la clase. Este método tiene dos
guiones bajos al comienzo y al final, una convención que ayuda a evitar que los
nombres de métodos predeterminados de Python entren en conflicto con los nombres
de nuestros métodos.
A este método init también se lo llama constructor
UNIVERSIDAD NACIONAL DE ASUNCIÓN | FACULTAD POLITÉCNICA
Clase 7 - POO
Método __del __ ()
El metodo __del__() es también un método especial, que se ejecuta cuando se elimina
un objeto. También llamado destructor.
UNIVERSIDAD NACIONAL DE ASUNCIÓN | FACULTAD POLITÉCNICA
Clase 7 - POO
Parámetro self
El auto parámetro se requiere en la definición del método, y debe aparecer primero
antes que los otros parámetros. Es una referencia a la instancia, la cual sirve para
acceder a los valores de un objeto en específico
UNIVERSIDAD NACIONAL DE ASUNCIÓN | FACULTAD POLITÉCNICA
Clase 7 - POO
Operador punto(.)
Sirve para acceder a los miembros de la instancia, ya sean métodos atributos, clases
anidadas, etc
UNIVERSIDAD NACIONAL DE ASUNCIÓN | FACULTAD POLITÉCNICA
Clase 7 - Encapsulamiento
Encapsulamiento
Clase 7 - Encapsulamiento
Encapsulamiento
UNIVERSIDAD NACIONAL DE ASUNCIÓN | FACULTAD POLITÉCNICA
Clase 7 - Decoradores
Propiedades de atributos
Las propiedades nos permiten por
ejemplo llamar código personalizado
cuando un atributo, método, variable
es mostrado/a, modificado/a,
borrado/a.
La función integrada
setter,property,deleter nos permitirá
interceptar la escritura, lectura,
borrado de los atributos. La sintaxis
para invocar es la siguiente:
UNIVERSIDAD NACIONAL DE ASUNCIÓN | FACULTAD POLITÉCNICA
Clase 7 - Herencia
Herencia
Se da con una única clase padre
UNIVERSIDAD NACIONAL DE ASUNCIÓN | FACULTAD POLITÉCNICA
Clase 7 - Herencia
Herencia múltiple
Se da con con dos o más clases
UNIVERSIDAD NACIONAL DE ASUNCIÓN | FACULTAD POLITÉCNICA
Clase 7 - Ejercicio
Implementar la clase coche
Atributos
color: string
matrícula: string
encendido: booleano
velocidad: int
combustible: string
fechaMantenimiento: list
montoMantenimiento: list
Metodos
arrancar()
ir()
masRapido()
masLento()
parar()
obtenerInformación()
agregarMantenimiento()
obtenerGastoMantenimiento()
UNIVERSIDAD NACIONAL DE ASUNCIÓN | FACULTAD POLITÉCNICA
Clase 7 - Ejercicio
Implementar la clase coche