Python单继承,子类调用父类方法,使用super关键字


但是这么写话还是并不符合我们平时写代码的规范,一般都是用super来调用,贴代码:

python 复制代码
# 面向对象的3大特征:继承性,封装性,多态性
class Human():
  sum1 = 0
  def __init__(self, name, age):
    self.name = name
    self.age = age

  def get_name(self):
    print(self.name)  

  def do_homework(self):
    print('parent\'s function')   


class Student(Human):   
  def __init__(self, school, name, age):
    # Human.__init__(self, name, age)
    # 由于开闭原则不建议这么调用,所以改成用super调用
    super(Student, self).__init__(name, age)

  def do_homework(self):
    super(Student, self).do_homework() # 当子类和父类有相同方法名的方法时,只会调子类的方法,可以通过super 手动调父类的方法
    print('print English homework')  


student1 = Student('湖南大学', '石敢当', 18)


student1.get_name()
student1.do_homework()
相关推荐
GEO_ai_zhijian4 小时前
饮料生产线质量检测系统哪家好
大数据·人工智能·python
gugucoding5 小时前
2. 【Java】搭建Java开发环境
java·开发语言
多加点辣也没关系5 小时前
JavaScript|第9章:对象 — 基础
开发语言·javascript·ecmascript
2601_949818095 小时前
Vector从入门到应用(C++ STL动态数组万字全解
开发语言·c++
尼恩久5 小时前
记录xls表格提取信息
python
工艺资源5 小时前
外贸工艺品设计参考平台众多,哪家专业值得了解
人工智能·python
无糖冰可乐215 小时前
安装wsl2,并链接Windows上的vscode运行项目
pytorch·vscode·python·pip
汤米粥5 小时前
Python爬虫中Xpath用法之——normalize-space()
开发语言·python
科技道人6 小时前
记录 设置-显示大小和字体
开发语言·android设置·字体和显示大小