您的位置:首页 > 编程语言 > Python开发

定义抽象基类(Abstract Base Class)

2016-10-25 00:00 477 查看
摘要: 通过代码实例介绍了抽象基类的定义方法,代码可直接运行。

#!/usr/bin/python3
import abc

#这里定义了一个抽象基类(ABC),继承abc.ABC
class animal(abc.ABC):
@abc.abstractmethod
def getName(self):
"""获取动物名称"""

#定义一个子类
class Cat(animal):
def getName(self):
return '猫,Hellokitty'

#定义了子类,但是没有重定义虚函数getName.
#import时不会报错,运行时报错,即定义对象时报错,如下所示。
class Dog(animal):
def __init__(self):
print('汪汪汪...')

if __name__=='__main__':
c=Cat()
print(isinstance(c,animal))
d=Dog()#此处报错--->TypeError: Can't instantiate abstract class Dog with abstract methods getName
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息