Versions-History von OBERON
Zum Begriff
OBERON
Änderung des Felds
Beschreibung am Dienstag, 30. Januar 2001, 23:00:
+Oberon ist eine Weiterentwicklung der <a href="./?w=1&q=476">Programmiersprache</a> Turbo Pascal und Modula durch Prof. Niklaus Wirth.
<br>
<br>Oberon ist eine hybride Sprache und vereinigt <a href="./?w=1&q=415">objektorientierte</a> und traditionelle, imperative Sprachmittel mit Klassen und Objekten.
<br>
<br>Im Gegensatz zu <a href="./?w=1&q=329">Java</a> besitzt es keine Basisklasse, Klassen werden in <a href="./?w=1&q=879">Modulen</a> deklariert und ein <a href="./?w=1&q=879">Modul</a> kann mehrere Klassen enthalten.
<br>
<br>Klassen sind Records (Zeiger auf Records), die neben Daten auch Methoden (Prozeduren) enthalten.
<br>
<br>Das Objekt, an das eine Meldung geschickt wird, nennt man Empfänger.
<br>Der formale Empfänger-<a href="./?w=1&q=433">Parameter</a> steht vor jedem Methodennamen.
<br>
<br>Zur welcher Klasse eine Methode gehört, ist aus dem Typ ihres formalen Empfänger-<a href="./?w=1&q=433">Parameters</a> ersichtlich.
<br>
<br>In anderen <a href="./?w=1&q=415">objektorientierten</a> Sprachen wird der Empfänger als versteckter <a href="./?w=1&q=433">Parameter</a> übergeben, z.B. bei <a href="./?w=1&q=329">Java</a> ist es der vordeklarierte Name 'this', den man auch weglassen darf.
<br>
<br>Vererbung: Oberon erlaubt nur von genau einer Oberklasse zu erben.
<br>Die Unterklasse erbt sämtliche Daten aller ihrer Oberklassen entlang der Vererbungshierarchie.
<br>
<br>Da in Oberon die Klassen Zeiger auf Records sind, auf deren Daten man von außen zugreifen kann, gilt in Oberon:
<br>Nicht die Klasse ist für das Verstecken ihrer Daten zuständig, sondern das <a href="./?w=1&q=879">Modul</a>, in dem sie implementiert ist.
<br>Eine Prozedur hat die Möglichkeit auf alle Daten der Klassen innerhalb eines <a href="./?w=1&q=879">Moduls</a> in Oberon zuzugreifen
<br>(In <a href="./?w=1&q=329">Java</a> sind die Klassen statt in <a href="./?w=1&q=879">Modulen</a> in Packages zusammengefaßt).
<br>
<br>Mehrfachvererbung wird von Oberon nicht Unterstützt.
<br>
<br>Oberon kennt keine <a href="./?w=1&q=606">Threads</a>, Synchronisation, sprünge (goto) und Semaphore.
<br>