zoukankan      html  css  js  c++  java
  • 面向对象三大特点及继承

    面向对象的三大特征:继承 多态 封装

    初识继承:

    子类及子类实例化的对象,可以调用父类的任何方法和变量

    类名可以访问父类所有内容

    子类实例化的对象也可以访问父类所有内容

    只执行父类中的方法:子类中不要定义与父类相同的方法

    只执行子类的方法:在子类中创建这个方法

    执行子类与父类中的方法:

    1.通过父类中的构造函数将参数传入

    2.利用super

    class Animal:
        def __init__(self,name,age,sex):
            self.name=name
            self.age=age
            self.sex=sex
        def eat(self):
            print("%s吃肉"%self.name)
    
    
    class Cat(Animal):
        def __init__(self,name,sex,age,color):
            # Animal.__init__(self,name,sex,age)
            super().__init__(name,age,sex)
            self.color=color
        def eat(self):
    
            print("%s%s抓老鼠"%(self.color,self.name))
            super().eat()
    
    c=Cat("阿花",'公',3,'白色')
    c.eat()
    

      

    继承的进阶

    继承:单继承 多继承

    类:经典类 新式类

    python3中所有的类都是新式类,默认继承object类

    经典类:默认不继承object的类都为经典类(python2中既有经典类又有新式类)所有的类都默认不继承object类

    单继承:新式类 经典类查询顺序一致

    多继承:新式类:遵循广度优先

        经典类:遵循深度优先

    广度优先:一条路走到倒数第二级,判断,如果其他路能走到终点,则返回走另一条路,如果不能,走到终点

    深度优先:一条路走到底

  • 相关阅读:
    Mysql如何修改unique key
    centos 编译 安装 protobuf
    EasyNetQ简单使用
    微信发送模板消息
    Python删除开头空格
    代码积累-Common
    sql With(NoLock),With(ReadPast)
    webform 使用log4net配置
    log4net.dll添加报错
    js-小数计算问题
  • 原文地址:https://www.cnblogs.com/wszxdzd/p/9368276.html
Copyright © 2011-2022 走看看