Rekursiver Datentyp

Status
Nicht offen für weitere Antworten.

DonMarcoHH

Aktives Mitglied
Moin,

ich hab wahrscheinlich eine ganze einfache Frage, aber ich hocke hier seit ner Stunde über dieser Frage und blockiere mich selber:
Ich will einen rekursiven Datentyp in dieser Form erstellen (zur Schachtelung von Quelltexten):
SourceCode = [Block]
Block = Block | Comment | Code
Code = [String]
Comment = [String]

Wie implementier ich so einen Datentyp in Java?
Bisher kam ich auf:
Java:
class SourceCode
class Block extends SourceCode
class Comment extends Block
class Code extends Block
Aber da fehlt mir ja noch die Rekursion, so dass ein Block aus 2 Blöcken der 2. Ebene bestehen kann, die wiederum Blöcke UND Kommentare haben.

Ich komm einfach nicht drauf...:bahnhof:
 
Mehrfache Vererbung ist nicht möglich, du könntest es aber mit Interfaces probieren.

Wobei mir da nicht so klar ist, ob du hier überhaupt Vererbung benötigst, oder ob du deine Objekte "Code" und "Comment" nicht einfach über verschiedene Konstruktoren in "Block" einfügst.

Soll deine Schreibweise eigentlich BNF sein? Sieht etwas seltsam aus, zumal hier keinerlei Rekursion drin ist.
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben