python 一個對象的屬性可以是另外一個類創建的對象

一個對象的屬性可以是另外一個類創建的對象

class Gun:

    def __init__(self, model):
        self.model = model
        self.bullet_count = 0

    def add_bullet(self, count):
        self.bullet_count += count

    def shoot(self):
        if self.bullet_count <= 0:
            return

        self.bullet_count -= 1
        print("發射子彈")


class Soldier:

    def __init__(self, name):
        self.name = name
        self.gun = None

    def fire(self):
        if self.gun == None:
            print("士兵沒有槍")
            return

        self.gun.add_bullet(50) #在士兵開槍的時候,調用封裝在Gun類中的裝填子彈的方法

        self.gun.shoot()#在士兵開槍的時候,調用封裝在Gun類中的發射子彈的方法





AK47 = Gun("AK47")

許三多 = Soldier("許三多")
許三多.gun = AK47
許三多.fire()


print(許三多.gun.bullet_count)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章