python 用abc模块构建抽象基类Abstract Base Classes

时间:2023-03-09 12:46:23
python 用abc模块构建抽象基类Abstract Base Classes

  见代码:

 #!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2018/08/01 16:58
from abc import ABCMeta, abstractmethod class SClass(object):
__metaclass__ = ABCMeta @abstractmethod
def my_print(self):
pass class C0Class(SClass):
pass class C1Class(SClass): def my_print(self):
print 'call my_print in child instance.' if __name__ == '__main__':
try:
c0 = C0Class()
c0.my_print()
except Exception, e:
print e.message c1 = C1Class()
c1.my_print()

输出:

 Can't instantiate abstract class C0Class with abstract methods my_print
call my_print in child instance.