/ www.portalsuite.de / Support / Portunity Portalsuite / Handbuch / 9 Einführung in die Portalsuite Objects / 9.1 Allgemeine Kurzeinführung in die OOP


Instanzierung eines Objektes

Mit diesem Konstrukt haben Sie allerdings noch keine Variable $Adresse oder etwas ähnliches, sondern lediglich eine Art neuen Variablentyp „Adresse“ deklariert, eben eine Klasse.

Um diese Klasse nun auch praktisch verwenden zu können, müssen Sie quasi noch eine Variabel vom Typ Adresse definieren. In der objektorientierten Welt spricht man allerdings nicht mehr von einer Variablen, sondern von einem Objekt, welches auf Basis einer Klasse instanziert wird. Die Klasse ist nichts anderes als der Bauplan, eine Blaupause für ein reales Objekt. In PHP geschieht dies mit folgender Syntax und dem Operator “new“:

     $MeineAdresse = new Adresse;

Anschließend haben Sie ein Objekt $MeineAdresse der Klasse Adresse angelegt. Mit einer Klasse Adresse können Sie beliebig viele Objekte unter verschiedenen Namen instanzieren. Dem einen odere anderen wird das ganze jetzt alles noch recht bekannt aus der einen oder anderen Hochsprache wie C oder Pascal vorkommen, dort gab es schließlich bereits so etwas ähnliches, nur nannte sich dies damals „Struktur“ (in C wird das Schlüsselwort „struct“ zur deklaration verwendet). In der Tat haben diese Strukturen einiges gemeinsam mit den Klassen der objektorientierten Programmierung und sind quasi eine Art Vorläufer der Klassen gewesen. Die Klassen können aber bei weitem noch viel mehr ! Zunächst möchten wir aber noch kurz darauf eingehen, wie Sie nun auf die innerhalb der Klasse definierten Variablen zugreifen können. Man spricht hierbei nicht mehr von Variablen die Werte haben, sondern von den Elementen (=Variablen) der Klasse die Eigenschaften (=Werte) haben:

     $MeineAdresse->Name = "Hugo";      $MeineAdresse->Strasse = "Beispielstr.3a";      $MeineAdresse->PLZ = 42349;      $MeineAdresse->Ort = "Wuppertal";      $MeineAdresse->Land = "Germany";

Beachten Sie bitte, daß hinter dem Pfeil kein Dollarzeichen steht ! Ansonsten verhalten sich die Elemente wie normale Variablen auch, d.h. Sie können Eigenschaften, respektive Werte zuweisen. Wie bei Variablen auch, spielt der Typ in PHP eine nicht so große Rolle und wird von PHP automatisch verwaltet. Der Unterschied zu dem Beispiel mit den klassischen Variablen $Name, $Strasse usw. besteht nun darin, daß $Name zu $Strasse usw. keinerlei Bezug hatte. Im Beispiel mit dem Objekt $MeineAdresse haben alle Elemente jedoch einen gemeinsamen Bezug durch die Klasse „Adresse“.

Class Adresse {      var $Name;      var $Strasse;      var $PLZ;      var $Ort;      var $Land;      function GetName ()      {           return ($this->Name);      }      function WriteName ($NewName)      {           $this->Name = $NewName;           // !!! Falsch: $Name = $NewName;      } }



[zurück] - [bookmarken] - [Druckversion] - [Weiterempfehlen] - [Kontakt] - [Impressum]





Providing unter: http://portunity.net

DSL, ENUM, Hosting, Server,...



unter: enum-center.de