-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathherencia.py
More file actions
72 lines (49 loc) · 1.97 KB
/
herencia.py
File metadata and controls
72 lines (49 loc) · 1.97 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
class Vehiculos():
def __init__(self,marca,modelo):
self.marca=marca
self.modelo=modelo
self.enmarcha=False
self.acelera=False
self.frena=False
def arrancar(self):
self.enmarcha=True
def acelerar(self):
self.acelera=True
def frenar(self):
self.frena=True
def estado(self):
print ("marca: ", self.marca, "\nModelo:", self.modelo,"\nEn marcha: ",self.enmarcha, "\nAcelerando: ",self.acelera, "\nFrenando:",self.frena)
class Furgoneta (Vehiculos):
def carga (self,cargar):
self.cargado=cargar
if (self.cargado):
return "la furgoneta esta cargada"
else:
return "la furgoneta no esta cargada"
class Moto (Vehiculos):#la clase moto hereda de la clase vehiculos
##ESTA CLASE TIENE 5 METODOS, 4 HEREDADOS Y UNO DEFINIDO DENTRO
hcaballito=""
def caballito (self):
self.hcaballito="haciendo el caballito"
def estado(self):
print ("marca: ", self.marca, "\nModelo:", self.modelo,"\nEn marcha: ",self.enmarcha, "\nAcelerando: ",self.acelera, "\nFrenando:",self.frena, "\nActividad especial:", self.hcaballito)
class VElectricos(Vehiculos):
def __init__(self,marca,modelo):
self.autonomia=100
super().__init__(marca,modelo)#llamando a metodo init de la clase padre
def cargarEnergia(self):
self.cargando=True
#INSTANCIA DE LA CLASE MOTO
miMoto=Moto("Honda", "CRB")
miMoto.caballito()
miMoto.estado()#se ejecuta el metodo estado de la clase moto (es decir, sobreescribe el metodo de la clase padre)
#INSTANCIA DE LA CLASE FURGONETA
miFurgoneta=Furgoneta("Renault", "Kangoo")
miFurgoneta.arrancar()
miFurgoneta.estado()
print (miFurgoneta.carga(True))
class BicicletaElectrica(VElectricos,Vehiculos):#herencia de clases multiples
pass
#INSTANCIA DE BICICLETAS ELECTRICAS
#se da prioridad a la primera clase que hereda que indicamos al declarar la clase
miBici=BicicletaElectrica("orbea","hj")