多态:多种状态,即完成某个行为时,使用不同的对象会得到不同的状态 (以父类做定义声明,以子类做实际工作)
抽象类 (接口):含有抽象方法称为抽象类
抽象方法:方法体是空实现的(pass)称为抽象方法
python
# Animal为抽象类
class Animal:
def speak(self):
pass
class Dog:
def speak(self):
print("汪汪汪")
class Cat:
def speak(self):
print("喵喵喵")
def make_noise(animal: Animal):
animal.speak()
dog = Dog()
cat = Cat()
make_noise(dog)
make_noise(cat)
# AC 为抽象类
class AC:
def cool_wind(sel):
pass
def hot_wind(sel):
pass
def swing_l_r(sel):
pass
class Midea_AC(AC):
def cool_wind(sel):
print("美的制冷")
def hot_wind(sel):
print("美的制热")
def swing_l_r(sel):
print("美的左右摆动")
class GREE_AC(AC):
def cool_wind(sel):
print("格力制冷")
def hot_wind(sel):
print("格力制热")
def swing_l_r(sel):
print("格力左右摆动")
def make_cool(ac: AC):
ac.cool_wind()
midea_ac = Midea_AC()
gree_ac = GREE_AC()
make_cool(midea_ac)
make_cool(gree_ac)