“”” 人 属性:手枪, 弹夹 行为:使用手枪,装弹
枪 属性:弹夹 行为:射子弹,
弹夹 属性:子弹数
“”“
class Person: # 定义 人 类 def init(self, gun, gunbox): # 属性 手枪 弹夹 self.gun = gun self.gunbox = gunbox
def frie(self): # 方法 开火 self.gun.boom() # 使用 手枪 调用 手枪类的boom方法 def addbox(self, some): # 方法 装弹 self.gunbox.count += some # 使用 弹夹 使弹夹类的子弹数增加 print('剩余子弹:%d发' % self.gunbox.count)class Gun: # 定义 手枪 类 def init(self,box01): #属性 弹夹 self.box01 = box01
def boom(self): #方法 boom if self.box01.count > 0: # 射击成功, 使弹夹的子弹数减少 self.box01.count -= 1 print('剩余子弹:%d发' % self.box01.count) else: print('没有子弹了')class GunBox: # 定义 弹夹类 def init(self,count): # 属性 子弹数 self.count = count
box01 = GunBox(5)
gun = Gun(box01)
per01 = Person(gun, box01)
per01.frie() per01.frie() per01.frie() per01.frie() per01.frie() per01.frie() per01.addbox(10) per01.frie() per01.frie()