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

组合||抽象类||多态||鸭子类型

时间:2018-03-18 23:21:53      阅读:184      评论:0      收藏:0      [点我收藏+]

标签:splay   color   attribute   mic   []   append   抽象   添加   pen   

组合

软件重用的重要方式除了继承之外还有另外一种方式,即:组合

组合指的是,在一个类中以另外一个类的对象作为数据属性,称为类的组合

技术分享图片
class People:
    def __init__(self,name,age,sex):
        self.name = name
        self.age  = age
        self.sex  = sex

class Renwen(People):
    def __init__(self,name,age,sex,weapon):
        super().__init__(name,age,sex)
        self.weapon = weapon
        self.attribute = [] #锐雯的属性列表
    def skill(self):
        print(%s is skill%self.name)

class Teacher(People):
    def __init__(self,name,age,sex,level):
        super().__init__(name,age,sex)
        self.level = level

    def teach(self):
        print("%s is teaching" %self.name)

class Attribute:
    def __init__(self,damage,spell,armor):
        self.danage = damage
        self.spell = spell
        self.armor =armor

    def tell_info(self):
        print("生命值:%s,法术:%s,护甲:%s"%(self.danage,self.spell,self.armor))

rewen = Renwen(锐雯,22,female,"砍刀")
teacher1 =Teacher(林书行,30,male,20)

a = Attribute(200,20,100)#创建属性对象

rewen.attribute.append(a) #添加属性值

#打印出属性值
for i in rewen.attribute:
    i.tell_info()
View Code

 

组合||抽象类||多态||鸭子类型

标签:splay   color   attribute   mic   []   append   抽象   添加   pen   

原文地址:https://www.cnblogs.com/Mryang123/p/8597973.html

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