6-2面向對象的組合和繼承以及多繼承 -开发者知识库

6-2面向對象的組合和繼承以及多繼承 -开发者知识库,第1张

一 組合概念

一個類的對象作為另外一個類對象的屬性
第一個例子:
 2 class Weapon:
 3     def prick(self, obj):  # 這是該裝備的主動技能,扎死對方
 4         obj.life_value -= 500  # 假設攻擊力是500
 5 
 6 class Person:  # 定義一個人類
 7     role = 'person'  # 人的角色屬性都是人
 8 
 9     def __init__(self, name):
10         self.name = name  # 每一個角色都有自己的昵稱;
11         self.weapon = Weapon()  # 給角色綁定一個武器;
12         
13 egg = Person('egon')
14 egg.weapon.prick() 
15 #egg組合了一個武器的對象,可以直接egg.weapon來使用組合類中的所有方法

最佳答案:

本文经用户投稿或网站收集转载,如有侵权请联系本站。

发表评论

0条回复