Unsere Datenschutzrichtlinie wird in Kürze aktualisiert. Bitte sehen Sie sich die Vorschau an.

PHP: Objektorientierte Programmierung

Klonen und Referenzieren

Testen Sie unsere 2019 Kurse

10 Tage kostenlos!

Jetzt testen Alle Abonnements anzeigen
Beim Klonen wird ein neues, identisches Objekt erzeugt. Außer, es bekommt mit einer eigens hinterlegten Clone-Methode noch zusätzliche Informationen mit auf den Weg.
04:07

Transkript

Auf den ersten Blick lässt sich's nicht gut erkennen, aber Objekte verhalten sich durchaus anders als Variablen, auch wenn sie ähnlich aussehen mögen. Beim Objekt ist es so, dass es in Wirklichkeit nur der Wegweiser hin zu einem Speicherplatz ist, an dem die Informationen zu diesem Objekt liegen. Das hat zur Folge, dass ich über zwei unterschiedliche Möglichkeiten auf ein und dasselbe Objekt verweisen kann. Bei meinem Raumschiff-Beispiel ist es so, dass ich hier das Objekt ramboo habe, und ich könnte aber ein Objekt $flex erzeugen, das = $ramboo ist, und ich könnte aber ein Objekt $flex erzeugen, das = $ramboo ist, und was ich jetzt hier tue ist aber nicht, dass ich ein neues Raumschiff erzeuge, sondern ich mache einen zweiten Wegweiser, hin zu diesem ein und demselben Speicherplatz, an dem die Informationen liegen. und wenn ich mir das ausgeben lasse, echo $flex, so werde ich einfach dieselbe Ausgabe bekommen, die ich schon bei ramboo habe. Vertrauen Sie mir nicht, sondern kontrollieren Sie selber, ich lasse mir das Ganze neu angeben, und hier bekomme ich jetzt meinen Shuttle ausgegeben, und wie gesagt, selber Speicherplatz, schwer zu beweisen, aber es ist so. Möchte ich jetzt dieses Raumschiff tatsächlich neu haben, also ein zweites, identisches Raumschiff erzeugen, so brauche ich dafür das Schlüsselwort clone. Und ich habe zwei Möglichkeiten, entweder ich setze schon eine vorgefertigte Methode ein, dann würde ich sagen flex2 = clone, und dann $ramboo, dann würde ich sagen flex2 = clone, und dann $ramboo, und das ist jetzt der Moment - wenn ich da vorne auch noch ein Dollarzeichen setze - und das ist jetzt eben der Moment, in dem ich tatsächlich ein neues Raumschiff erzeugt habe, ein neues Raumschiff, das aber ebenfalls zur Shuttle-Klasse gehört, und mit der Geschwindigkeit von drei Lichtjahren durch die Gegend reist. Ich werde, wenn ich das jetzt abspeichere, und mir ausgeben lasse, keinen Unterschied zu bisher sehen, außer dass ich es vielleicht da unten noch mit einem echo-Befehl mit ausgeben lassen sollte. Aber wenn ich sage $flex2, so sieht $flex2 bei der Ausgabe exakt genauso aus wie seine beiden Vorgänger. Ich kann allerdings mir die Methode auch selber noch einrichten. Ich kann zum Beispiel sagen, dass ich die Methode clone hier in meiner Klasse schon hinterlege, und die habe ich jetzt noch ein bisschen aufgepeppt, damit wir einen Unterschied sehen können, das heißt, in dem Augenblick, wo ich etwas klone, bekomme ich die Ausgabe, dass es ein Abbild von dem ersten ist, und die Geschwindigkeit erhöht sich. Jetzt bekomme ich hier unten andere Werte ausgegeben, ich speichere das Ganze, schaue es mir wieder in meinem Browser an, und jetzt sehen Sie die Veränderung, jetzt merken wir, dass flex2 tatsächlich ein Abbild von Shuttle ist, und zudem auch noch schneller als das ursprüngliche Shuttle. Sie haben jetzt gemerkt, welche Möglichkeiten Sie haben, um einerseits einen zweiten Wegweiser hin zum selben Speicherplatz zu machen, oder um tatsächlich ein neues Schiff mit den selben Eigenschaften zu kreieren, beziehungsweise können Sie mit Hilfe der Methode clone, wenn Sie diese schon in der Klasse hinterlegen, auch für eine Veränderung, eine automatische Veränderung sorgen.

PHP: Objektorientierte Programmierung

Lernen Sie alle Aspekte kennen, die bei der Umsetzung des OOP-Programmierstils in PHP eine Rolle spielen.

2 Std. 32 min (34 Videos)
Derzeit sind keine Feedbacks vorhanden...
 
Software:
Exklusiv für Abo-Kunden
Ihr(e) Trainer:
Erscheinungsdatum:23.09.2016
Laufzeit:2 Std. 32 min (34 Videos)

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!