-
Notifications
You must be signed in to change notification settings - Fork 36
/
Copy path023_POO_Herencia_Coche_super.py
48 lines (32 loc) · 1.3 KB
/
023_POO_Herencia_Coche_super.py
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
class Persona():
def __init__(self, nombre, edad, ciudad):
self.nombre = nombre
self.edad = edad
self.ciudad = ciudad
def resumen(self):
print("Nombre:", self.nombre, "\nEdad:", self.edad,"\nCiudad:",self.ciudad, "\n")
persona1 = Persona("Manolo", 45, "Madrid")
persona1.resumen()
'''class Empleado(Persona):
def __init__(self, salario, antiguedad):
super().__init__("Andrés", 32, "Barcelona")
self.salario = salario
self.antiguedad = antiguedad
operario01 = Empleado(23000, 2)
operario01.resumen()
'''
#El problema es que todos los empleados se llamarían igual
# y que no nos saca salario y antiguedad
class Empleado(Persona):
def __init__(self, nombre_empleado, edad_empleado, ciudad_empleado, salario, antiguedad):
super().__init__(nombre_empleado, edad_empleado, ciudad_empleado)
self.salario = salario
self.antiguedad = antiguedad
def resumen(self):
print("Nombre:", self.nombre, "\nEdad:", self.edad,"\nCiudad:",self.ciudad,
"\nSalario", self.salario, "\nAntiguedad:", self.antiguedad, "años.")
operario01 = Empleado("Andrés", 34, "Barcelona", 23000, 2)
operario01.resumen()
#Principio de sustitución
isinstance(operario01, Empleado)
isinstance(operario01, Persona)