python 用abc模块构建抽象基类Abstract Base Classes
见代码:
1 #!/usr/bin/env python 2 # -*- coding: utf-8 -*- 3 # @Time : 2018/08/01 16:58 4 from abc import ABCMeta, abstractmethod 5 6 7 class SClass(object): 8 __metaclass__ = ABCMeta 9 10 @abstractmethod 11 def my_print(self): 12 pass 13 14 15 class C0Class(SClass): 16 pass 17 18 19 class C1Class(SClass): 20 21 def my_print(self): 22 print 'call my_print in child instance.' 23 24 25 if __name__ == '__main__': 26 try: 27 c0 = C0Class() 28 c0.my_print() 29 except Exception, e: 30 print e.message 31 32 c1 = C1Class() 33 c1.my_print()
输出:
1 Can't instantiate abstract class C0Class with abstract methods my_print 2 call my_print in child instance.
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 深入理解 Mybatis 分库分表执行原理
· 如何打造一个高并发系统?
· .NET Core GC压缩(compact_phase)底层原理浅谈
· 现代计算机视觉入门之:什么是图片特征编码
· .NET 9 new features-C#13新的锁类型和语义
· 手把手教你在本地部署DeepSeek R1,搭建web-ui ,建议收藏!
· Spring AI + Ollama 实现 deepseek-r1 的API服务和调用
· 《HelloGitHub》第 106 期
· 数据库服务器 SQL Server 版本升级公告
· C#/.NET/.NET Core技术前沿周刊 | 第 23 期(2025年1.20-1.26)