码迷,mamicode.com
首页 > 其他好文 > 详细

抽象类

时间:2018-09-12 01:19:55      阅读:182      评论:0      收藏:0      [点我收藏+]

标签:ring   bst   abs   from   some   register   int   div   something   

from abc import abstractmethod, ABCMeta

# 抽象类是不能实例化的类
class Talker(metaclass=ABCMeta):

    @abstractmethod                 # 标记为抽象方法,子类必须实现这方法
    def talk(self):
        pass


class Said(Talker):
    def talk(self):                        # 子类实现抽象类的方法
        print(talk something)

class Herring:
    pass
    # def talk(self):
    #     print(‘Herring‘)


said = Said()
said.talk()
print(isinstance(said, Talker))
h = Herring()
print(Talker.register(Herring))        # 注册使Herring成为Talker的对象
print(isinstance(h, Talker))
print(issubclass(Herring, Talker))
# h.talk()                             # 区别继承,这里就不能调用父类的方法,抽象类失去意义

 

抽象类

标签:ring   bst   abs   from   some   register   int   div   something   

原文地址:https://www.cnblogs.com/hhsh/p/9631638.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!