Ich bin dabei, Elemente zu einem textbasierten RPG hinzuzufügen, das ich mache. Meine Klassen wie folgt aussehen:Wissen, wann eine Instanz der Klasse erstellt werden muss, anstatt eine Unterklasse zu erstellen?
class Item(object):
def __init__(self, name, value, description):
self.name = name
self.value = value
self.description = description
class Weapon(Item):
def __init__(self, name, value, damage, description):
self.damage = damage
super(Weapon, self).__init__(name, value, description)
Inventar Mein Spielers ist ein Wörterbuch mit den Tasten, die verschiedene in-Game-Item Gruppen:
class Player(object):
def __init__(self, inventory, ...):
self.inventory = {'weapons': []}
hero = Player()
Die Frage ist, wenn Tutorials sehen, haben sie mir eine Klasse machen ein Element als so:
class Dagger(Weapon):
def __init__(...)
...
und fügen sie mein Inventar hero.inventory['weapons'].append(Dagger())
Meine Frage ist: gibt es einen Vorteil beim Erstellen neuer Unterklassen wie Dagger()
über nur Erstellen von Instanzen der Weapon()
Klasse, da ich keine zusätzlichen Attribute zu einzelnen Waffen hinzufügen?
Danke für jede Hilfe, ich hoffe, dieser Beitrag ist klar.