Discuss / Python / 自我总结

自我总结

Topic source

author = 'yaesuj'

自我总结:

继承:

B是A的子类,继承了A的数据类型和方法,Python的继承就是为了重用父类的代码:

class A(object):
    def a(self):
        funca1
class B(A):
    pass

多态:在代码运行的时候,传入相同的方法名(方法名一样,内容可以不一样),会自动调用实际类型的方法,这就是多态的意思

继承为前提的多态:

B是A的子类,B可以增加自己特有的方法,也可以把父类的方法覆盖重写,可理解为进化、变异、长江后浪推前浪之类。传入的只要是父类或者它的子类,就会自动调用实际类型的方法:

class A(object):
    def a(self):
        funca1
    def x(self):
        funcx1
class B(A):
    def a(self):
        funca3
    def b(self):
        funcb1
b=B()
b.a()#这时用funca3而不是funa1
b.x()#funcx1

“开闭”原则

对扩展开放:允许新增Animal的子类

对修改封闭:不需要频繁修改依赖Animal类型的函数


  • 1

Reply