• python继承和多态


    • 私有属性和私有方法不能继承,常见的单层继承、多层继承、多继承
    1. 单层继承:
    class A(object):
    def aMet(self):
    print("A类中")

    class B(A):
    def bMet(self):
    print("B类中")

    b=B()
    print(b.aMet(),b.bMet())

    结果如下:

    A类中
    B类中

      2.多层继承

    class A(object):
    def aMet(self):
    print("A类中")

    class B(A):
    def bMet(self):
    print("B类中")

    class C(B):
    def cMet(self):
    print("C类中")

    c=C()
    print(c.aMet(),c.bMet(),c.cMet())

    结果如下:

    A类中
    B类中
    C类中

      3.多继承,一个类 同时可以继承多个父类

    class A():
    def aMet(self):
    print("A类中")
    class B():
    def bMet(self):
    print("B类中")
    class C(A,B):
    def cMet(self):
    print("C类中")
    c1=C()
    print(c1.aMet(),c1.bMet(),c1.cMet())

    结果如下:

    A类中
    B类中
    C类中

    • #多态:调用相同的方法,实现不同的功能 (特殊情况下才会产生)

    class Animal(object):
    """动物类"""
    def run(self):
    print("不知道具体如何跑")

    class Dog(Animal):
    """狗类"""
    def run(self):
    print("四条腿汪汪的跑")

    class Snake(Animal):
    """蛇"""
    def run(self):
    print("梭的跑")

    xiaohuang=Dog()
    xiaoqing=Snake()

    #定义一个函数,驱赶动物:字符串,数字,对象
    def ganAnimal(animal):
    """赶动物"""
    animal.run()

    #调用 函数
    ganAnimal(xiaohuang)
    ganAnimal(xiaoqing)

    结果如下

    四条腿汪汪的跑
    梭的跑

  • 相关阅读:
    8051单片机指令和寻址方式
    C/C++的关系
    go JSON 读写到文件
    Oracle 对未提交事务的查询
    win8 iis 安装
    Silverlight 项目 对话框
    VisualSVN错误 Cannot query proxy blanket解决办法
    silverlight浏览器自适应问题
    windows server2003 多用户登陆问题解决办法
    silverlight 缺少对象错误
  • 原文地址:https://www.cnblogs.com/liuchunxiao83/p/14830201.html
Copyright © 2020-2023  润新知