网站模板建站教程,深圳采纳品牌营销策划公司,重庆装修公司口碑哪家好,dw做响应式网站import abc指定metaclass属性将类设置为抽象类#xff0c;抽象类本身只是用来约束子类的#xff0c;不能被实例化class Animal(metaclassabc.ABCMeta): # 统一所有子类的方法abc.abstractmethod # 该装饰器限制子类必须定义有一个名为talk的方法def say(self):print(‘动物基…import abc指定metaclass属性将类设置为抽象类抽象类本身只是用来约束子类的不能被实例化class Animal(metaclassabc.ABCMeta): # 统一所有子类的方法abc.abstractmethod # 该装饰器限制子类必须定义有一个名为talk的方法def say(self):print(‘动物基本的发声...‘, end‘‘)class People(Animal): # 但凡继承Animal的子类都必须遵循Animal规定的标准passclass Dog(Animal):passclass Pig(Animal):passobj1 People()obj2 Dog()obj3 Pig()obj1.say() # 动物基本的发声...卧槽obj2.say() # 动物基本的发声...汪汪汪obj3.say() # 动物基本的发声...吼吼吼# 若子类中没有一个名为talk的方法则会抛出异常TypeError无法实例化# TypeError: Can‘t instantiate abstract class People with abstract methods sayclass Animal(metaclassabc.ABCMeta): # 统一所有子类的方法abc.abstractmethoddef say(self):print(‘动物基本的发声...‘, end‘‘)class People(Animal):def say(self):super().say()print(‘卧槽‘)class Dog(Animal):def say(self):super().say()print(‘汪汪汪‘)class Pig(Animal):def say(self):super().say()print(‘吼吼吼‘)obj1 People()obj2 Dog()obj3 Pig()obj1.say() # 动物基本的发声...卧槽obj2.say() # 动物基本的发声...汪汪汪obj3.say() # 动物基本的发声...吼吼吼补充说明Python语言特性 - 鸭子类型“当一只鸟走起来像鸭子、游泳起来像鸭子、叫起来也像鸭子那么这只鸟就可以被称为鸭子”