首页 > 其他 > 详细

抽象类

时间:2020-12-05 22:40:07      阅读:30      评论:0      收藏:0      [点我收藏+]

 

技术分享图片

技术分享图片

 

demo1.py
# 抽象类
# 1 抽象类要有抽象方法
# 2 要有抽象类的定义语句
# 3 抽象方法要被继承的,不然毫无意义
from abc import ABCMeta,abstractmethod
class animal(metaclass=ABCMeta):
__metaclass__ = ABCMeta # 抽象类声明
def __init__(self,name,age):
self.name = name
self.age = age
# 抽象方法
@abstractmethod
def say(self):# 只定义不实现具体的内容,子类必须实现父类的抽象方法
pass
class dog(animal): # 父类是抽象类 1.实现父类的抽象方法 2.子类本身也是抽象类
def __init__(self,name,age):
super().__init__(name,age)
def say(self):
print(‘我是子类,实现类第父类的抽象方法‘)

demo2.py


from abc import ABCMeta,abstractmethod
# 学生 -- 去教室读书
# 老师 --去教室上课
# peope: name,age 方法:gotoclass
class people(metaclass=ABCMeta):
def __init__(self,name,age):
self.name = name
self.age = age
@abstractmethod
def goto_class(self):
pass
class student(people):
def __init__(self, name,age,coursename):
super().__init__(name,age)
self.coursename = coursename
# 例如开发忘记写goto_class方法了
def goto_class(self):
print(‘我是学生,教室读书‘)
class teacher(people):
def __init__(self,name,age, tech_coursename):
super().__init__(name, age)
self.coursename = tech_coursename
def goto_class(self):
print(‘我是老师,去教书‘)
zs = student(‘王二‘,19,‘python‘)
ls = teacher(‘李四‘,24,‘python‘)

抽象类

原文:https://www.cnblogs.com/james5d/p/14091238.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!