Profesor Miguel Cantillana
INS240 – Lenguajes de Programación
Ingeniería en Computación e Informática
Semestre 2017-1
Orientada a objetos con Python II
import math
class Complejo:
def __init__(self, real, imaginario):
self.real = real
self.img = imaginario
def abs(self):
print math.sqrt((self.real*self.real)+(self.img*self.img))
def __add__(self, otro):
return Complejo(self.real + otro.real, self.img + otro.img)
def __sub__(self, otro):
return Complejo(self.real + otro.real, self.img + otro.img)
def mostrar(self):
print self.real, self.img
class Instrumento:
pass
class Guitarra(Instrumento):
pass
class Bajo(Instrumento):
pass
Cuando creamos una clase derivada a partir de una clase padre y tenemos que la clase derivada proporciona o requiere su propio método __init__ , este método de la clase derivada debe llamar explícitamente el método __init__ de la clase base.
class Animal:
def __init__(self):
print "Animal creado"
def quien_soy(self):
print "Animal"
def comer(self):
print "Estoy comiendo"
class Perro(Animal):
def __init__(self):
Animal.__init__(self)
print "Perro creado"
def quien_soy(self):
print "perro"
def ladrar(self):
print "woof woof<!"
class Acuatico:
pass
class Terrestre:
pass
class Anfibio(Acuatico, Terrestre):
pass
En programación orientada a objetos se denomina polimorfismo a la capacidad que tienen los objetos de una clase de responder al mismo mensaje o evento en función de los parámetros utilizados durante su invocación.
Un objeto polimórfico es una entidad que puede contener valores de diferentes tipos durante la ejecución del programa. (wikipedia)
El polimorfismo es el proceso de la utilización de un operador o función de diferentes formas para diferentes datos de entrada. En términos prácticos, el polimorfismo significa que si la clase B hereda de la clase A, no tiene
que heredar todo acerca de la clase A, que puede hacer algunas de las cosas que hace una clase diferente
Papel, Boligrafo, Marcador