In Inform 7 gibt es keine Mehrfachvererbung, anders als in der zugrunde liegenden Sprache Inform 6. Vererbung geschieht mit dem Schlüsselwort “is a kind of”.
Vielleicht soll es in einem Spiel viele Bücher geben, so dass es sich lohnt, eine Klasse dafür einzuführen. Hier die Klasse Buch und ein Beispielobjekt dazu:
A book is a kind of thing. It has a text called title. It has a number called page number. It has a text called subject. The diary is a book in the House. The description is "A small, black book with hand-written entries." The title is "Red's Secret Diary". The page number is 80. The subject is "Little Red Riding Hood and her adventures."
Die Buchklasse erbt von der Ding-Klasse alle deren Attribute (darunter Essbarkeit, Tragbarkeit, Beleuchtungszustand) sowie die Attribute von deren Oberklasse. Alle Regeln, die für ein thing
gelten, treffen auch auf books
zu.
Hier die Klasse Spiel und ein Beispielobjekt dazu:
A game is a kind of thing. It has a text called title. It has a number called player number. Monopoly is a game in the House. The description is "A box with a cardboard game board and lots of little green and red houses. And money, too." The player number is 6. The title is "Monopoly. An exciting game for all the family."
Eine Klasse für Waffen und ein Beispiel:
A weapon is a kind of thing. It has a number called level. The level usually is 1. The rusty sword is a weapon in the House. The description is "A rusty old sword, but still sharp."
Hier eine spezielle Art von Waffe, nämlich eine Schusswaffe, und ein Beispiel:
A gun is a kind of weapon. The level is usually 2. It has number called range. The range is usually 10. It has a number called ammunition. The ammunition is usually 6. The Smith & Wesson is a gun in the House. Understand "gun" and "handgun" as the Smith & Wesson. The range is 8.
Und eine Schreibfläche und zwei Beispiele :
A writing-surface is a kind of thing. It has a text called writing. It is usually fixed in place. The blackboard is a writing-surface in the House. The writing is "e = m c(square)." The notepad is a writing-surface in the House. It is portable.
Man kann bei der Definition neuer Klassen auch Vorgaben für beliebige Attribute machen: it is never edible oder it is always portable oder it is usually not scenery. Wenn etwas always
oder never
der Fall ist, kann man das bei den Objekten später nicht ändern, wenn etwas usually
so ist, dann gilt das für neue Objekte so lange, bis man etwas anderes festlegt.
Sinn machen Attribute nur, wenn sie bei Methoden berücksichtigt werden. Inform 7 behandelt dieses Konzept allerdings auf ungewohnte Weise.