Advertisement
zwliew

Classes in python - inheritance

Aug 28th, 2017
119
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.44 KB | None | 0 0
  1. class Person:
  2. def __init__(self, name, age, gender):
  3. self.__name = name
  4. self.__age = age
  5. self.__gender = gender
  6.  
  7. def update_age(self):
  8. self.__age += 1
  9.  
  10. def get_name(self):
  11. return self.__name
  12.  
  13. def get_age(self):
  14. return self.__age
  15.  
  16. def get_gender(self):
  17. return self.__gender
  18.  
  19. class Student(Person):
  20. def __init__(self, name, age, gender, school, ct):
  21. Person.__init__(self, name, age, gender)
  22. self.__school = school
  23. self.__class = ct
  24.  
  25. def set_class(self, ct):
  26. self.__class = ct
  27.  
  28. def set_school(self, school):
  29. self.__school = school
  30.  
  31. def get_class(self):
  32. return self.__class
  33.  
  34. def get_school(self):
  35. return self.__school
  36.  
  37. def display(self):
  38. print("Name:", self.get_name()) # Note: inheritance does not imply accessibility
  39. print("Age:", self.get_age()) # Cannot access directly though it inherits the attributes
  40. print("Gender:", self.get_gender())
  41. print("School:", self.get_school())
  42. print("Class:", self.get_class())
  43.  
  44. def __str__(self):
  45. out = "Name: " + self.get_name() + "\nAge: "+ str(self.get_age()) + "\nGender: " + \
  46. self.get_gender() + "\nSchool: " + self.get_school() + "\nClass: " + self.get_class()
  47. return out
  48.  
  49. def main():
  50. person = Person("Helen", 22, "F")
  51. print(person.get_age())
  52. person.update_age()
  53. print(person.get_age())
  54.  
  55. print()
  56.  
  57. student = Student("Helen", 22, "F", "HCI", "17S6A")
  58. student.display()
  59. print()
  60. print(student)
  61.  
  62. main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement