欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

python面向对象开发--封装,继承和多态

程序员文章站 2024-03-16 23:44:34
...

面向对象开发

  • 把相关的函数组合在一起形成一个对象,特征:封装,继承,多态

封装

1.一个功能封装成一个函数,目的是为了重复使用代码,方便查看代码.

继承

1.如果多的子类都需要都一个方法,那么我们会把这个方法给父类,目的,重复使用代码.
2.继承顺序根据(类.__mro__).
3.在开发中最好是先调用父类的这个方法也就是super().__init__() ,然后在添加自己的功能,保证程序的稳定.

python面向对象开发--封装,继承和多态

多态

  • 必须是继承的,一个函数有多种不同的显示效果(结果不一样),这个在Python中不严谨.

小试牛刀

以下的代码的输出将是什么? 说出你的答案并解释。
class Parent(object):
    x = 1

class Child1(Parent):
    pass

class Child2(Parent):
    pass

print(Parent.x, Child1.x, Child2.x)
Child1.x = 2
print(Parent.x, Child1.x, Child2.x)
Parent.x = 3
print(Parent.x, Child1.x, Child2.x)
答案
1  1  1
1  2  1
3  2  3

第二个结果是child1中新加属性 x
第三个结果是因为child2中没有属性x 继承父类中