函数式编程的应用场景 --> 各个函数之间是独立且无共用的数据
面向对象编程-->通过类和对象封装,代码复用
调用被封装的内容时,有两种情况:通过对象直接调用,通过self间接调用
对于面向对象的继承来说,其实就是将多个类共有的方法提取到父类中,子类仅需继承父类而不必一一实现每个方法。
class Animal:
def eat(self):
print("%s 吃 " %self.name)
def drink(self):
print("%s 喝 " %self.name)
def shit(self):
print("%s 拉 " %self.name)
def pee(self):
print("%s 撒 " %self.name)
class Cat(Animal):
def __init__(self, name):
self.name = name
def cry(self):
print('喵喵叫')
class Dog(Animal):
def __init__(self, name):
self.name = name
def cry(self):
print('汪汪叫')
c1 = Cat('小白家的小黑猫')
c1.eat()
c2 = Cat('小黑的小白猫')
c2.drink()
d1 = Dog('胖子家的小瘦狗')
d1.eat()
class F1:
pass
class S1(F1):
def show(self):
print('S1.show')
class S2(F1):
def show(self):
print('S2.show')
s1_obj = S1()
s1_obj.show()
s2_obj = S2()
s2_obj.show()