当前位置: 首页 > news >正文

网站制作吧网页制作图片大小设置

网站制作吧,网页制作图片大小设置,做相册哪个网站好用吗,国内做视频课程的网站有哪些继承 继承就是为了解决两个有大量重复性代码的类,抽象出一个更抽象的类放公共代码,主要是代码复用,方便代码的管理与修改 类的继承包括属性和方法,私有属性也可继承 class Person(): # 默认是继承object超类pass…

继承

继承就是为了解决两个有大量重复性代码的类,抽象出一个更抽象的类放公共代码,主要是代码复用,方便代码的管理与修改

类的继承包括属性和方法,私有属性也可继承

class Person():               # 默认是继承object超类passclass Man(Person):passprint(Person.__bases__)       # __bases__查询父类
print(Man.__bases__)          # 继承Person
class Person():eat = '吃饭'def __init__(self):self.people = '人'def shuijiao(self):print('睡觉')class Man(Person):passprint(dir(Person))
print(dir(Man))         # 属性方法全部继承a = Man()
print(dir(a))
class Person():def __init__(self, name):self.name= nameclass Man(Person):passs = Man('张三')         # 父类初始化要传值,子类也需要
print(s.name)            # 张三

解决私有属性的调用

class Person():def __init__(self, age):self.__age = agedef run(self):print(self.__age)    # 这里可以调用私有属性class Man(Person):pass# def to(self):#     print(self.__age)        # 无法在子类调用私有属性s = Man(18)
# s.to()              # 无法直接调用父类的私有属性
print(dir(s))       # 但是私有属性也会被继承s.run()            # 通过写一个方法来调用私有属性

 

 

继承顺序

按照继承顺序来,首先是实例本身,然后是实例的类,然后是父类,以此类推,最后是object超类

class Person():def __init__(self, age):self.age = ageclass Man(Person):passs = Man(18)print(s.__class__.__mro__)     # (<class '__main__.Man'>, <class '__main__.Person'>, <class 'object'>)
print(Man.__mro__)             # 跟以上一样

 

多继承

class Person():texp = '直立行走'def __init__(self, age):self.name = '人'self.age = ageself.__sex = '性别'def run(self):print('人会跑')class Man(Person):a = '父'class Woman(Person):a = '母'class Son(Woman, Man):        # 谁在前,就先继承谁,依据这里passprint(Son.__mro__)# (<class '__main__.Son'>, <class '__main__.Man'>, <class '__main__.Woman'>, <class '__main__.Person'>, <class 'object'>)

继承的属性或方法与父类同名会怎么样

先继承谁的,就依据谁的,按照上面的这个代码的话,那就是继承Woman的,如果是需要调用到 “a” 那么就是输出 “母”

 

 

 

重构(重写)

class Person():def __init__(self, age):self.age = ageclass Man(Person):a = '父'class Woman(Person):a = '母'class Son(Woman, Man):def __init__(self, name):          # 父类子类同时初始化,也是按照继承顺序来self.name = names = Son('张三')
print(s.name)                          # 初始化按照继承顺序来

 

 

定向继承

super,指定继承,需要有继承关联

super(): 是用于调用父类的一个方法,遵循就近原则

是用来解决多重继承问题的,直接用类名调用父类方法在使用单继承的时候没问题,但是如果使用多继承,会涉及到查找顺序(mro)、重复调用

class Person():def __init__(self, age):self.age = agedef eat(self):print('吃饭')class Man(Person):a = '父'class Woman(Person):a = '母'class Son(Woman, Man):def run(self):super().eat()print(super().a)print(super(Woman, self).a)s = Son(18)
s.run()# 吃饭
# 母
# 父

 

 

http://www.yayakq.cn/news/722467/

相关文章:

  • 网络 网站建设企业安全文化建设中的安全承诺是指
  • 太原市手机网站建设网站开发费用摊销年限
  • 网站建设 长安东营伟浩建设集团网站
  • 提供网站建设课程代码seo哪家好
  • 北京团购网站建设注册360建筑网平台
  • 淅川微网站开发网站建设应走什么会计科目
  • 爱站网ip反域名查询域名最新通知
  • 电子商城网站开发网站建设侵权
  • 在小型网站建设小组宁乡网站开发
  • led灯散热片技术支持 东莞网站建设做素材网站赚钱吗
  • 山西网站建设情况汇总商丘网站制作推广
  • 南网站建设 首选搜点网络网站不备案怎么做网页淘宝客
  • 个人网站开发的背景互动营销策略
  • 网站app免费软件怎样自学设计室内装修效果图
  • 电子商务网站栏目win7 iis部署网站
  • 广州建设银行网站培训机构老师何去何从
  • 古田住房与建设局网站手机网站开发协议
  • 如何做百度收录的网站重庆专业平台推广公司
  • 网站建设后期维护方案wordpress 后台很慢
  • 百度给做网站收费多少钱全网营销推广有哪些平台
  • 想开一个外企的网站怎么超做做家教中介 不建网站怎么做
  • seo应用领域有哪些南昌seo如何优化
  • 建设工程合同管理网站企业网站建设费属于办公费吗
  • 站酷魔方网站建设中公司网站 用 个人备案域名
  • 设计类网站排名云南网站设计哪家好
  • 山西做网站公司成都网站建设 工作室
  • 什么网站做唱歌主播网站模板如何使用
  • 局网站建设工作征求意见云购物商城
  • 建站行业是什么意思如何再工商局网站做设备抵押
  • 用KEGG网站做通路富集分析地产项目网站建设ppt