" name="sm-site-verification"/>
侧边栏壁纸
博主头像
PySuper 博主等级

千里之行,始于足下

  • 累计撰写 231 篇文章
  • 累计创建 15 个标签
  • 累计收到 2 条评论

目 录CONTENT

文章目录
Web

Python 面向对象编程

PySuper
2019-11-04 / 0 评论 / 0 点赞 / 19 阅读 / 0 字
温馨提示:
本文最后更新于2024-05-28,若内容或图片失效,请留言反馈。 所有牛逼的人都有一段苦逼的岁月。 但是你只要像SB一样去坚持,终将牛逼!!! ✊✊✊

面向对象三大特性:

封装:将数据进行封装到对象中,以供其他函数进行调用

继承:提高代码复用性

多肽:多种形态或多种状态

封装

  • 下面的代码块我们可以看到:
    • 在初始化方法中接收参数,类就接收这些参数
    • 在调用的时候,先是实例化了一个对象,这个对象有实现初始化的属性
    • 再把对象传入函数,就相当于把数据传到了函数中
class ags:
    def __init__(self,k1,k2,k3):
        self.k1=k1
        self.k2=k2
        self.k3=k3

def awe(arg):
    print(arg.k1)
    print(arg.k2)
    print(arg.k3)

a = ags(1, 2, 3)
awe(a)

>> 1
>> 2
>> 3

继承

单继承

class FuncA:         # 父类 基类
    def f1(self):
        print(1)

class FuncB(FuncA):           # 子类  派生类
    def f2(self):          
        print(2)

class FunC(FunB):
    def f3(self): # 子类  派生类
        print(3)

obj = FunC() 

obj.f2()   # 先从自己里面去找,找不到就往父级去找
>> 2
obj.f1()
>> 1   
obj.f3()
>> 3

多继承

class FuncA:   # 父类 基类
    def f1(self):
        print(1)

class FuncB:  # 父类 基类
    def f1(self):
        print(2)

class FuncC(fa,foo):
    def f3(self): # 子类  派生类
        print(3)


obj = fc()
obj.f1()
>> 2

多肽

在python中由于原生支持多态,所有没有了特殊性,崇尚鸭子模型,python函数传参时无需指定类型

0
  1. 支付宝打赏

    qrcode alipay
  2. 微信打赏

    qrcode weixin

评论区