上善若水

水善利万物而不争
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

python | 浅学 | 9 多重继承 单继承示例

Posted on 2022-07-10 15:35  董锡振  阅读(40)  评论(0编辑  收藏  举报
class people:
      name,age='',0   #定义基本属性
      __weit=0         #定义私有属性,外部不能直接访问  __private_attrs:两个下划线开头,声明该属性为私有
      def __init__(self,n,a,w):   #定义构造方法
          self.name=n
          self.age=a
          self.__weit=w
      def speak(self):
          print("%s说: 我%d岁了。" % (self.name, self.age))
# 单继承示例
class student(people):
      grade=''
      def __init__(self,n,a,w,g):
          people.__init__(self,n,a,w)  #调用父类的构函
          self.grade=g
      def speak(self):                #覆写父类的方法
          print("%s说: 我%d岁了,读%s年级。" %(self.name,self.age,self.grade))

#另一个类,多重继承之前的准备
class developers:
      topic,name='',''
      def __init__(self,t,n):
          self.topic=t
          self.name=n
      def speak(self):
          print("%s说: 想讲述一段故事,主题是:%s。" % (self.name, self.topic))

#多重继承
class sample(developers,student):
      a=''
      def __init__(self,n,a,w,g,t):
          developers.__init__(self, t, n)
          student.__init__(self,n,a,w,g)


test = sample("Tim",25,80,4,"Python")
test.speak()   #方法名同,默认调用的是在括号中参数位置排前父类的方法 这里调用的 developers的
#Tim说: 想讲述一段故事,主题是:Python。